2015-10-16 46 views
0

的樣本數據:搜索一個特定項目中的對象和查詢的數組,如果一個屬性存在

{ 
    _id: '1234', 
    games: [{ 
    name: 'World of Warcraft', 
    lastLogin: ISODate(), 
    subscriptions: ['56', '78'] 
    }, { 
    name: 'Starcraft II', 
    lastLogin: ISODate() 
    }] 
} 

從本質上講,我想找到大家的是,沒有一個「訂閱」欄爲給定的遊戲。我無法弄清楚一個好辦法。

Players.update({ 
    'games.name': 'World of Warcraft', 
    'games.$.subscriptions': { $exists: false } 
}, { 
    $set: { 'games.$.subscriptions': GLOBAL_SUB } 
}); 

如何查詢屬性的數組的數組和一個字段的存在?

回答

3

使用時要匹配相同的數組元素在多個方面$elemMatch

+0

好極了!謝謝你,先生 – corvid

相關問題