2013-08-23 47 views
31

我對MongoDB$addToSet方法有所瞭解,但我無法在文檔中的任何位置找到remove等效方法。

達到此目的的最佳方法是什麼?努力實現類似下面的:

obj = { 
    name: 'object1 
    tags: ['fus', 'ro', 'dah'] 
} 

db.collection.update({name: 'object1'}, {$removeFromSet: { tags: 'dah'}}); 

回答

45

我認爲你正在尋找$pull,其中「從現有陣列中移除一個值的所有實例」。

db.collection.update(
    {name: 'object1'}, 
    {$pull: { tags: 'dah'}}); 
+1

太好了。希望在文檔中的某個地方提到這一點。 – Jascination

+1

所有的數組運算符可以在這裏找到:http://docs.mongodb.org/manual/reference/operator/update-array/#update-operators – Ross

+0

如何用一個命令從數組中刪除多個元素? –