这基本上是一个简单的问题,但我找不到它的查询功能。
{
_id: 1,
foo: [
{ bar: 9 },
{ bar: 16 }
]
}
{
_id: 2,
foo: [
{ bar: 9 },
{ bar: 9 },
{ bar: 9 }
]
}
{
_id: 2,
foo: [
{ bar: 9 },
{ bar: 9 },
{ bar: 9 }
]
}
因为这是每个foo.bar = 9的唯一文档。
“查找所有文件WHERE foo.bar = 9对于本文档中的每个foo.bar。”
或者我是否需要“找不到所有文件(foo.bar!= 9)”之类的内容?
提前谢谢!
答案 0 :(得分:3)
db.c.find({
"foo.bar" : {
$exists : true
},
"foo" : {
$not : {
$elemMatch : {
"bar" : {
$ne : 9
}
}
}
}
});