【发布时间】:2017-09-25 19:01:36
【问题描述】:
这是我收藏中的嵌套文档示例:
{
"title" : "front-end developer",
"age" : 25,
"name" : "John",
"city" : "London",
"skills" : [
{
"name" : "js",
"project" : "1",
"scores" : [
{
max: 76,
date: date
},
{
max: 56,
date: date
}
]
},
{
"name" : "CSS",
"project" : "5",
"scores" : [
{
max: 86,
date: date
},
{
max: 36,
date: date
},
{
max: 56,
date: date
},
]
}
]
}
是否有一种简单的方法可以确定其他文档是否仅具有与skills 数组相同/重复的结构?例如具有相同的键、值和数组索引?任何帮助将不胜感激。谢谢!
【问题讨论】:
-
只需在
skills数组上使用$group即可获取具有相同skills数组的所有文档。类似db.collection_name.aggregate({"$group":{"_id":"$skills", "_ids":{"$push":"$$ROOT"}}}) -
嘿@Veeram 感谢您的回答,我会试一试并告诉您:)
-
你好,前几天我回答了你的问题,你也让我看看这个问题。我认为,您从@Veeram 获得的“评论”是正确答案。不知道,为什么他不这样发布。
-
嘿@dnickless,感谢您的回复。我确实尝试了 Verram 的答案,但它返回了我的所有文档,而不是在技能数组中具有相同内容的文档。请问您知道为什么吗?