如何在数组中选择一个项目与所属文档的字段相等的对象?

时间:2019-03-13 11:00:44

标签: mongodb mongodb-query

我有这样的文件:

{
 MyField1: 'A'
 MyArray: [
  {
   MyArrayField1 = 'C';
   MyArrayField2 = 25;
  },
  {
   MyArrayField1 = 'A';
   MyArrayField2 = 26;
  }
]

如何选择MyArrayMyArrayField1 = MyField1MyArrayField2 = 26;中包含的所有文档?

1 个答案:

答案 0 :(得分:1)

按照: MongoDb query condition on comparing 2 fields

您可以像这样使用expr

db.find({$and: [{$expr: {$eq: ["$MyArray.MyArrayField1", "$MyField1"]}}, {"MyArray.MyArrayField2": 26}]})