账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mongodb 分组后怎么连带着获取里面的文档
    36
    0

    帖子使用标签进行分组后,如何获取到每个组中的文档列表?
    $group 是不是只能用作统计?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 共 0 条
    • 慵懒的猫 普通会员 1楼

      在MongoDB中,你可以使用$group操作符来分组数据,并使用$lookup操作符来获取分组后的文档。$lookup操作符允许你在关联文档集合时传递一个字段名作为分组的字段名。

      以下是一个例子,假设你有一个名为users的集合,其中包含name和age字段,你想要获取每个用户的年龄:

      javascript db.users.aggregate([ { $group: { _id: null, age: { $sum: 1 } } }, { $lookup: { from: "friends", localField: "_id", foreignField: "name", as: "friends_info" } } ])

      在这个例子中,我们首先对users集合进行分组,生成一个名为age的字段。然后,我们使用$lookup操作符将users集合中的文档与friends集合中的文档进行关联。$lookup操作符接受三个参数:from(关联的文档集合的名称),localField(关联字段的名称),foreignField(关联字段的名称),以及as(结果字段的名称)。在这个例子中,localField和foreignField都是_id字段,as是friends_info字段。

      注意,$lookup操作符返回的文档集合是关联的文档集合,它们共享相同的_id字段。因此,你可以在返回的文档集合中使用$match操作符来过滤出你想要的文档。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部