$addToSet
operator僅當該值不在數組中時才向數組添加值。如果該值在數組中,則$addToSet
不會修改該數組。
我想插入兩個不應該通過一個請求重複的值。這可能嗎?
我試圖將一個數組傳遞給$addToSet
運算符,但它插入了一個數組,而不是該數組中的每個值。
$ mongo test
MongoDB shell version: 2.4.9
connecting to: test
> db.c.insert({a: [1, 2, 3]})
> db.c.find()
{ "_id" : ObjectId("53511a255a82cd559393d840"), "a" : [ 1, 2, 3 ] }
> db.c.update({}, {$addToSet: {a: [2, 4]}})
> db.c.find()
{ "_id" : ObjectId("53511a255a82cd559393d840"), "a" : [ 1, 2, 3, [ 2, 4 ] ] }
我將我自己的答案。 :-)太簡單了...... –
@IonicăBizău無論如何。您知道如果您打算添加問答類型的回覆,您實際上可以在一個提交中同時做出問題和答案。這避免了像我們這樣的人提交答案,因爲你實際上同時做了兩個。我打賭重複某處 –
當我問這個問題時,我不知道答案。但是在發佈之後,我記得有可能與此有關的「每個」運營商。 :-) –