0
這裏下面是一個假設的Users
集合,其中多個地址被允許:的MongoDB:如何更新陣列的複合項目,確保不重複
{
"firstName": "Joe",
"lastName": "Grey",
...
"addresses":
[
{
"name": "Default",
"street": "..."
...
},
{
"name": "Home",
"street": "..."
...
},
{
"name": "Office",
"street": "..."
...
}
]
}
每個地址都有一個名字......這應該是獨特的–例如不能有兩個地址默認。如果我想更新,我們假設索引1處的地址(首頁),如何確保更新數據不包含名稱默認和Office?
我猜兩步方法(即find
然後update
)不會是非常正確的,因爲數據可能會在find
和隨後update
操作之間進行更新,是不是?
您想要在索引1上更新的屬性,或者您想用新的json替換索引1。 – Sumeet
我想更新名稱屬性......並且新名稱*必須*不同於數組中其他地址的名稱(示例中的索引0和2)。 – j3d