首页 > 解决方案 > 使用列表查询 MongoDB

问题描述

我正在使用列表来跟踪产品。我想使用这个列表来查询 MongoDB,而不使用 for 循环。

我正在使用 Python 3 和 Pymongo。

product_list = [product1, product2, product3]

cursor = db.collection.find({'product_id': product_list})

我可以创建一个 for 循环,但是有没有办法使用 Python 中的列表或数组来查询 MongoDB?

编辑:每次找到 product_list 中的产品时,我都想返回结果。

标签: pythonarraysmongodblistpymongo

解决方案


作为@D。SM 指出,我可以使用此处找到的 $IN 运算符:https ://docs.mongodb.com/manual/reference/operator/query/in/

只是为了让其他人可以看到对我有用的 Python 语法:

product_list = [product1, product2, product3]

cursor = db.collection.find({'product_id': {'$in': product_list}})

in$ 必须用引号引起来。


推荐阅读