我有这样的元素:
{ "_id" : 1,
"docs" : [
{ "key": "blah", "count": 2},
{ "key": "wow", "count": 10}
]
},
{ "_id" : 2,
"docs" : [
{ "key": "blah", "count": 11}
}
我想要检索未定义docs.key == "wow"
的元素。在这种情况下,元素"_id": 2
。
对于这个问题,我得出相反的结论:
db.getCollection('myCollection').find(
{
"docs.key": "wow"
}
);
我尝试过$exists
和aggregate
的组合,但我找不到合适的解决方案。
答案 0 :(得分:4)
你可以这样做:
db.getCollection('myCollection').find({
"docs.key": {$ne: "wow"}
});
答案 1 :(得分:0)
您是否尝试过$ne运算符
db.getCollection('myCollection').find(
{
"docs.key": {$ne : "wow"}
}
);