通过一组对象查找文档

我想在MongoDB中创build一个查询来查找文档和数组文档属性的完全math。

我有文件:

{meta: {prop1: "hi1", prop2: "ho1"}}, {meta: {prop1: "hi2", prop2: "ho2"}}, {meta: {prop1: "hi3", prop2: "ho3"}}, {meta: {prop1: "hi1", prop2: "ho2"}} 

我想find其meta属性是这个数组中的确切对象之一的文档:

 [ {prop1: "hi1", prop2: "ho1"}, {prop1: "hi2", prop2: "ho2"} ] 

期望的结果将是文件:

 {meta: {prop1: "hi1", prop2: "ho1"}}, {meta: {prop1: "hi2", prop2: "ho2"}} 

但不是:

 {meta: {prop1: "hi1", prop2: "ho1"}}, {meta: {prop1: "hi2", prop2: "ho2"}}, {meta: {prop1: "hi1", prop2: "ho2"}} 

在$运算符中使用。

 Collection.find({ meta: { $in: [ { prop1: 'hi1', prop2: 'ho1'}, { prop1: 'hi2', prop2: 'ho2'} ] } }) 

我们可以使用$or为此 –

 Collection.find({ $or: [ {'meta.prop1': 'hi1', 'meta.prop2': 'ho1'}, { 'meta.prop1': 'hi2', 'meta.prop2': 'ho2'} ] }) 

注意 :$或$的内部对象,$和condition是构build的。

我们也可以使用$in因为$ in是内置的使用$或