使用聚合搜索数据



我有一些文档的结构是这样的:

{
    "_id": Mongoid,
    "relate_id": 1,
    "userid": user1
},
{
    "_id": Mongoid,
    "relate_id": 2,
    "userid": user2
},
{
    "_id": Mongoid,
    "relate_id": 1,
    "userid": user3
}

我的预期结果如下:

{
    "relate_id": 1
    "userid": [user1, user3]
},
{
    "relate_id": 2
    "userid": [user2]
}

我可以使用一个aggregate()查询来搜索这个结构吗?

是的,您需要使用组聚合阶段,使用push操作符来填充userid

列表
db.collection.aggregate([
    {$group: {_id: "$relate_id", userid: {"$push": "$userid"}}},
]
)

相关内容

  • 没有找到相关文章

最新更新