我想删除
foo
等于 x 的所有文档。看起来像是一个非常基本的操作,但我就是不明白。
我知道如何删除单个文档,但这还不够 - 我可能必须一次删除几千个文档。
如何批量删除 CouchDB 中的文档?
我不知道这是否正确,但创建一个公开
foo
字段的视图,在视图中查询要删除的所有文档的 doc._id
,并对所有文档进行批量更新文件。所以两次(理想情况下)给沙发打电话。
http://comments.gmane.org/gmane.comp.db.couchdb.user/11222
有类似的方法。
按照
批量删除文档中的示例对要删除和更新的所有文档进行批量更新
doc._deleted=true
批量删除非常简单:
https://docs.couchdb.org/en/stable/api/database/bulk-api.html#updating-documents-in-bulk
只需将 JSON 列表发布到 _all_docs,如下所示:
{"_id": "0", "_rev": "1-62657917", "_deleted": true}
map_fun = function(doc){
if (doc.doc_type == 'classic'){
emit(doc._id, doc)
}}
deldoclist = []
for row in db.query(map_fun):
deldoclist.append(row.key)
for item in deldoclist:
del db[item]