Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Mongo中具有多个条件的过滤器_Python_Mongodb_Pymongo - Fatal编程技术网

Python Mongo中具有多个条件的过滤器

Python Mongo中具有多个条件的过滤器,python,mongodb,pymongo,Python,Mongodb,Pymongo,在Mongo(特别是Pymango)中,我的目标是能够排除不等于多个值之一的记录。在此示例中,其中数据不是504或400。我知道我可以使用以下方法排除不包含单个值的记录: foo = db.collection.find({ "data": { "$ne": 400 } }) 我试过: foo = db.collection.find({ "data": { "$ne": 400 }, "data": { "$ne": 504 }

在Mongo(特别是Pymango)中,我的目标是能够排除不等于多个值之一的记录。在此示例中,其中数据不是504或400。我知道我可以使用以下方法排除不包含单个值的记录:

foo = db.collection.find({
        "data": { "$ne": 400 }
    })
我试过:

foo = db.collection.find({
        "data": { "$ne": 400 },
        "data": { "$ne": 504 }
    })

…但在这两种情况下,似乎只有最后一次比较发生。我仍然得到数据为400的记录。我如何写这篇文章,使它在两个方面都能过滤?换句话说,我如何执行“数据不等于以下任何[…]”?

您正在查找
$nin
。 据报道,

$nin
选择文档,其中:

  • 字段
    值不在指定的数组或
  • 字段不存在
试一试

让自己熟悉这些文档的内容。
foo = db.collection.find({
        "data": { "$ne": 400, "$ne": 504 }
    })
foo = db.collection.find({
    "data": { "$nin": [504, 400] },
})