【发布时间】:2016-05-15 17:31:53
【问题描述】:
我想过滤 Categories 嵌入式数组以仅获取具有 parent 键的数组。
{
"_id": ObjectId("5737283639533c000978ae71"),
"name": "Swiss",
"Categories": [
{
"name": "Management",
"_id": ObjectId("5738982e39533c00070f6a53")
},
{
"name": "Relations",
"_id": ObjectId("5738984a39533c000978ae72"),
"parent": ObjectId("5738982e39533c00070f6a53")
},
{
"name": "Ambiance",
"_id": ObjectId("57389bed39533c000b148164")
}
]
}
我已尝试使用find,但没有成功。
经过一番研究,它似乎可以通过聚合命令完成,但我不喜欢它的工作方式,我宁愿只使用 find 命令。
另外,我问自己,就性能而言,将每个类别存储在一个新集合中不是更好吗?
编辑,我想得到这样的东西作为查找输出:
[
{
"name": "Relations",
"_id": ObjectId("5738984a39533c000978ae72"),
"parent": ObjectId("5738982e39533c00070f6a53")
}
]
【问题讨论】:
标签: php mongodb mongodb-query aggregation-framework mongodb-php