我有一个mongo'_id'列表,我想删除它.目前我正在这样做
# inactive_users --> list of inactive users
for item in inactive_users:
db.users.remove({'_id' : item})
Run Code Online (Sandbox Code Playgroud)
但我的问题是列表太大了......(它可能会超过100,000+).因此查询列表中的每个项目只会增加服务器上的负载.他们是一种在mongo查询中传递整个列表的方法,这样我就不必一次又一次地触发查询.
谢谢
Rom*_*kar 73
db.users.remove({'_id':{'$in':inactive_users}})
Run Code Online (Sandbox Code Playgroud)
Yev*_*yev 14
列出所有并使用$in
运算符:
db.users.remove({_id:{$in:[id1, id2, id3, ... ]}})
Run Code Online (Sandbox Code Playgroud)
您需要使用ObjectId()
以下格式传递特定格式的ID :
db.users.remove({_id: {$in: [ObjectId('Item1'), ObjectId('Item2'), ObjectId('Item2')]}});
Run Code Online (Sandbox Code Playgroud)
Remove
不接受整数 - 你必须使用格式为的ObjectId
实例. _id
string
归档时间: |
|
查看次数: |
43194 次 |
最近记录: |