我如何使用python使用变量进行mongodb查询(或find())?

时间:2018-04-11 04:39:30

标签: python mysql mongodb find

我需要从MySQL to MongoDB中的数据库传输数据。 我有一些Mysql的查询,其中包含一些数据:

SELECT data FROM table where data BETWEEN r1 AND r2 

我存储在列表中

所以我的问题是 当我试图在mongodb中找到数据时(数据在)我做了这个: datamongo = collection.find({"data" : data[x]}) 结果是没有,文学上。

我需要创建一个包含列表范围的循环,并在mongodb中搜索列表中的每个数据。 我试过find() and find_one(),但没有一个有效。 但是如果我把常数而不是变量,那么一切都有效。

我希望有人能帮助我

1 个答案:

答案 0 :(得分:0)

regex部分来了。您需要以下面解释的方式使用该值

collection.find({"data" : new RegExp(data[x], 'i')})

或者您也可以使用

collection.find( { 'data' : { '$regex' : data[x], '$options' : 'i' } } )

请注意i中的RegExp,这仅用于不区分大小写的比较。如果您想要严格比较,请将其删除。

希望它有所帮助。

由于