如何从mongo db结果中排除一个文档?
例如:
{
"_id":ObjectId("57bc115edb04d82550e823cb"),
"menu":[ ],
"properties":[
{
"name":"N1",
"value":"17"
},
{
"name":"N2",
"value":"10"
},
{
"name":"N3",
"value":"14"
}
]
}
如何获得名称为N1&的属性的结果N2但不是N3?
答案 0 :(得分:0)
尝试使用$ne
运算符。您应该能够使用此关键字制定查询。
答案 1 :(得分:0)
要获取没有名称的文档,N3属性使用$ne(不等于)运算符
db.collectionName.find( { "properties.name": { $ne: "N3" } } )
已更新:
您需要使用聚合查询来获取所有具有属性的记录,只丢弃包含N3作为名称的属性元素。
db.collectionName.aggregate([
{$unwind:"$properties"},
{$match:{"properties.name":{$ne:"N3"}}},
{$group:{
_id:"$_id",
properties:{$push:"$properties"},
menu: {$first:"$menu"}
}
}
])