如果我有一对像这样的对:
[
{foo: 'a', bar: 'b'},
{foo: 'b', bar: 'c'},
{foo: 'a', bar: 'd'},
{foo: 'b', bar: 'b'},
]
我想在一个集合中找到与这些对完全匹配的文档,我该怎么做?
我看过$ in,$ all,$ elemMatch运营商,但他们似乎没有做我想做的事。
我可以单独进行查询:
db.baz.find({foo: 'a', bar: 'b'})
db.baz.find({foo: 'b', bar: 'c'})
db.baz.find({foo: 'a', bar: 'd'})
db.baz.find({foo: 'b', bar: 'b'})
但我想做的事情是这样的:
db.baz.find([
{foo: 'a', bar: 'b'},
{foo: 'b', bar: 'c'},
{foo: 'a', bar: 'd'},
{foo: 'b', bar: 'b'},
]);
答案 0 :(得分:1)
尝试$或语法:
db.baz.find({
$or: [
{ foo: 'a', bar: 'b' },
{ foo: 'b', bar: 'c' },
{ foo: 'a', bar: 'd' },
{ foo: 'b', bar: 'b' },
]
})