【发布时间】:2021-11-05 12:36:14
【问题描述】:
我的数据结构如下所示:
[
{
"_id": "1",
"title": "Yamaha",
"data": "Sed ut perspiciatis",
"type": "Bike"
},
{
"_id": "2",
"title": "Pulsar",
"data": "Quis autem vel eum",
"type": "Bike"
},
{
"_id": "3",
"title": "Tesla Model Y",
"data": "because it is pleasure",
"type": "Car"
},
{
"_id": "4",
"title": "Harley-Davidson",
"data": "praising pain was born",
"type": "Bike"
},
{
"_id": "6",
"title": "Mustang",
"data": "non numquam eius",
"type": "Car"
},
{
"_id": "7",
"title": "BMW",
"data": "Man of Culture",
"type": "Car"
}
]
现在,从前端用户可以使用他们的唯一_id从数据库中搜索任何项目,如下所示:
db.collection.find({_id: "3" })
返回以下内容:
[
{
"_id": "3",
"data": "because it is pleasure",
"title": "Tesla Model Y",
"type": "Car"
}
]
问题部分:
现在,包括上面返回的文档,我还想返回那些匹配 type 值的文档。
我的问题意味着;如果用户正在查找任何带有其特定 _id 的文档。假设 3 那么它应该返回以下内容:
找到具有唯一_id和$grouptype字段值的项目
[{
"_id": "3",
"title": "Tesla Model Y",
"data": "because it is pleasure",
"type": "Car"
}
{
"_id": "6",
"title": "Mustang",
"data": "non numquam eius",
"type": "Car"
},
{
"_id": "7",
"title": "BMW",
"data": "Man of Culture",
"type": "Car"
}]
这可能吗?是否可以 $group finding By Id 之后的文档?我尝试了几种方法来做到这一点,但每种方法都没有用。对于这个复杂的要求
:)
【问题讨论】:
标签: mongodb aggregation-framework