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