0
我(在這種情況下set
)具有文檔的collection
與array
:my_array
MongoDB的:與嵌入式陣列的尺寸更新領域
我添加的東西到這個set
定期
collection.find({ "_id": target_id })
.upsert().update({ '$addToSet':{ 'my_array': new_entry }})
我在這個DB上執行的許多邏輯操作都基於這個子數組的大小。所以我創建了一個名爲len_of_array
的字段(索引)。該指數對我的用例非常重要。
在這是一個真正的array
而不是set
的情況下,$incr
會做工精美的相同update
然而,由於子集是set
,收集,my_array
的長度,可能會或可能沒有改變。
我目前的解決方案:
調用此定期對每個target_id
,但是這需要爲了得到執行找到正確的len_of_array
collection.find({ '_id': target_id})
.upsert().update({ '$set':{ 'len_of_array': new_length }})
我的問題 是否有辦法在單個更新中將文檔的字段設置爲相同的文檔中的索引大小的子數組?
感謝。我正確的假設沒有辦法索引'$ size'我會更新我的問題來解釋該字段'len_of_array'也被索引。 – puj
@puj只需索引數組。 –
哇。謝了哥們。 – puj