【发布时间】:2016-07-04 05:04:26
【问题描述】:
我有一个包含 372985 名称计数的 mongoDB 集合,我想删除 200000 之后的条目,以便删除后的条目总数从 372985 减少到 200000
如何通过 mongoDB 查询来做到这一点?
用例
我的 python 代码无法根据我的机器配置处理大量数据,所以我想减少 mongo 集合的大小,以便它可以在有限的 RAM 中运行。
如果这不能通过 mongo 查询完成,有人可以提示尝试 python 做同样的事情。
【问题讨论】:
-
我们可以在文档游标循环中使用跳过和删除记录吗
-
@PraneethGudumasu:你能举个例子吗?
-
try{ MongoClient 客户端 = new MongoClient( "localhost" , 27017); MongoDatabase db = client.getDatabase("students"); MongoCollection
集合 = db.getCollection("grades"); MongoCursor cursor = collection.find().skip(10).iterator(); while(cursor.hasNext()){ 文档文档 = cursor.next(); collection.deleteOne(doc); } -
这是一个 mongoshell 查询还是什么?我的意思是在哪里运行这个?
-
那个是java驱动的。我想,我们也可以从 mongo shell 执行游标
标签: python mongodb mongodb-query mongo-shell database