假设我在MongoDB中有一个集合,其中包含以下模式:
{
"_id": ObjectID,
"Entries": [
{
"_id": ObjectID,
"Content": string
}
]
}
现在我想编辑数组“Entries”中元素的“Content”字段,然后将该元素移动到第一个索引 - 零 - 以便在最后一次更改元素时对数组进行降序排序。这可以在一个'原子'查询中完成,我可以将其放在一个db.collection.update中吗?
如果没有,我应该使用说一个UNIX时间戳,然后在查询时按顺序排序吗?性能差异是否显着?
答案 0 :(得分:0)
如果您在数组中使用objectId,则此id的一部分是时间戳。
这意味着您始终可以确定何时创建字段。如果你需要处理上次更新 - 那么timestamp字段将解决这个问题,因为我个人不会在阵列位置上转发。
详细了解objectID和python here