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

0ejtzxu1  于 2021-06-24  发布在  Mysql
关注(0)|答案(1)|浏览(420)

我需要从中的数据库传输数据 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() 但没有人能工作。但如果我把一个常数而不是一个变量放进去,一切都会起作用。
我希望有人能帮助我

ehxuflar

ehxuflar1#

这里来了 regex 部分。您需要以如下所述的方式使用该值

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

或者你也可以用

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

请注意 iRegExp ,这只是不区分大小写的比较。如果你想进行严格的比较,就把它去掉。
希望有帮助。
谢谢

相关问题