2011-11-25 73 views

回答

2

它看起來像你擊中了「對象數組」問題。當你有一個對象數組時,MongoDB沒有一套完整的update操作。

下面是你可以做的事情。您可以訪問a.0.ba.1.b。這些將訪問數組中的第一個和第二個元素。所以,你可以這樣做:

db.coll.update({_id:"yourid"}, {$unset: {'a.0.b':1,'a.1.b':1}})

但是,您將需要生成每個文檔正確的查詢。有些文件可能在數組中有2個元素,有些可能有10個。所以在這裏肯定需要額外的編程。

+0

是的,這正是我的問題。我希望能有一個優雅的解決方案,而我對mongo的瞭解不夠。 :( – vedang

+0

如果在一兩天內沒有更好的答案,我會將此答案標記爲已接受 – vedang

+0

Thanks @vedang,這絕對是MongoDB缺乏功能的區域,它支持有對象數組,但大多數更新操作符不適用於對象數組。 –

相關問題