我有一个文件:
[
{name: "Jack", age: "18"},
{name: "Mark", age: "24"},
{name: "Jane", age: "16"},
...
]
我有一个名字列表:
["Mark", "Bob", "Jack"]
有什么办法可以找到文件中没有的名字?就我而言,它将是[“ Bob”]。
答案 0 :(得分:1)
主持人删除了重新发布评论,以便在答案中添加链接
如果有任何疑问,请在评论中告诉我,使用聚合管道尝试以下解决方案。
db.collection.aggregate([
{
$group: {
_id: null,
names: {
$push: "$name"
}
}
},
{
$project: {
leftNames: {
$setDifference: [
[
"Mark",
"Bob",
"Jack"
],
"$names"
]
}
}
}
])