2015-04-07 43 views
0

我的查询:

{ 'objects.item.opts1.opts2': { '$elemMatch': [ { name: 'false' } ] } } 

回报:已在阵列opts2任何东西,即使我改“名”的一些字段不存在,结果任何项目将始终是相同的

猫鼬模式:

var MySchema = new Schema({ 
    objects: { 
     item: { 
      opts1: [{ 
       opts2: [{ 
        name: { type: String }, 
       }] 
      }],  
     }, 
}); 
+2

{ 'objects.item.opts1.opts2':{ '$ elemMatch':{名称: '假'}}} 试试这个没有数组在$ elemMatch。 –

+0

就是这样!谢谢@ShreyanceJain – coiso

+0

@ShreyanceJain你能写这个答案吗? – chridam

回答

4

使用以下wihout在$ elemMatch阵列....

{ 'objects.item.opts1.opts2': { '$elemMatch': { name: 'false' } } }