Mongodb:保留有序数组的有限数据

时间:2016-07-27 18:14:01

标签: mongodb pymongo

我的藏品中的每件商品都有data份文件(包含读物):

{
    "_id": ...,
    "data": {
        "2016-07-24": {"reading1": 1},
        "2016-07-25": {"reading1": 2},
        "2016-07-26": {"reading1": 3}
    }
}

定期添加相同格式的数据。

密钥必须是唯一的,因为新数据将替换旧数据(例如,"2016-07-25": {"reading1": 9}将替换上面列出的值)

如何仅保留最近的10个条目(按键分类时)?我可以使用mongo查询执行此操作,还是应该使用应用程序端逻辑?

data转换为数组可能会有效,但是存在重复日期条目的问题。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

$slice数组更新运算符完全符合您的要求。请查看文档页面上的examples