python - 在 Python 中删除多个 MongoDB 文档

标签 python mongodb pymongo nosql

问候,

我正在尝试使用以下语法从 MongoDB 集合中删除多个文档。我不知道这是否正确,因为我在互联网上的某个地方找到了它,并且自从执行此声明的合法性以来一直无法找到任何东西:

pymongo_collection_object.remove(
    [
        {
            'sku': '100-00'
        },
        {
            'sku': '200-00'
        }
    ]
, safe=True)

我希望上面的代码会删除两个文档,包括 '100-00' 或 '200-00' 的 'sku' 值,但不幸的是,这两个文档仍然存在于集合中。我还尝试将“sku”键及其值都转换为 Unicode,因为我知道它们存储在这种编码中。如您所知,我还启用了安全模式,以确保服务器端不会发生任何异常情况。

感谢任何帮助,谢谢!

最佳答案

您可以使用 $or/$in 运算符来实现。

试试这个:

pymongo_collection_object.remove({'$or': [{'sku': '100-00'}, {'sku': '200-00'}]}, safe=True)

pymongo_collection_object.remove({'sku': {'$in': ['100-00', '200-00']}}, safe=True)

关于python - 在 Python 中删除多个 MongoDB 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4549871/

相关文章:

python - 如何评估模板中两个变量的串联?

python - pyautogui GIMP 自动化问题

javascript - MongoDB $or 用于 $match 阶段内的两个字段

python - 在 Python 中使用 JSON 将查询发送到 MongoDB

python - 为什么使用 update_one 更新记录会引发 ValueError?

Python lxml 通过 id-tag 查找元素

Python - 电子邮件 header 编码 UTF-8

mongodb - 如何删除mongodb中group返回的文档?

javascript - Mongoose 找到很多并更新所有

python - 由于类型错误 : not enough arguments for format string,无法创建索引