首页 > 解决方案 > 如何按创建日期删除 MongoDB 中的数据?

问题描述

我有一个包含 380k 文档的 MongoDB,我想删除在特定日期之前创建的所有文档。谁能帮我写这个任务的查询?谢谢你。

标签: databasemongodb

解决方案


文档的ObjectId基本上包含时间戳。因此,您可以像这样轻松地ObjectId从时间戳构造并使用$lt运算符(python 代码):

from bson.objectid import ObjectId
ts = datetime.datetime(2017, 1, 1)
doc_id = ObjectId.from_datetime(ts)
result = collection.find({"_id": {"$lt": doc_id}})

推荐阅读