如何在PyMongo中使用sql"like"?

>>> db.houses.find().count()
11616
>>> db.houses.find({"hid":u"16999"}).count()
1
>>> db.houses.find({"hid":u"/9/"}).count()
0

documentation表示MongoDB中的sql"like"(SELECT * FROM users WHERE name LIKE "%Joe%")是db.users.find ({name:/Joe/}).

如果直接向cli客户端接口mongodb指定查询,则所有操作都正常,但在pymongo中不起作用.

有什么问题吗?

谢谢

推荐答案

pymongo不支持regex文本,您必须使用"$regex"谓词:

 db.houses.find({"hid":{"$regex": u"9"}})

Mongodb相关问答推荐

MongoDB索引使用

Mongoose 查询以获取内部数组和该内部数组中的特定元素

更新值导致错误 Golang MongoDB

聚合 $accumulator + $project

从 kubectl exec 获取返回值到 powershell 脚本

TypeError:Cannot read property '_id' of undefined

将 MongoDB BsonDocument 转换为字符串

mongoose默认值等于其他值

mongodb - 查找具有最接近整数值的文档

从性能Angular 来看 MongoDB 嵌入式与参考

如何在任意深度查找 MongoDB 字段名称

为什么不建议在 MongoDB 中使用服务器端存储函数?

如何使用 MongoDB 和 Mongoid 在 Rails 3 上进行适当的数据库测试 (TDD)

如何在 MongoDB 聚合查询中使用 $hint?

从每个组中 Select 前 N 行

MongoError:Topology is closed, please connect despite established database connection

Mongo:无法在 src/mongo/shell/mongo.js:145 连接到服务器 127.0.0.1:27017

MongoException: Index with name: code already exists with different options

在 MongoDB 中为现有用户更改密码

MongoDB 的 MMAPV1、WiredTiger 或 In-Memory StorageEngine 如何 Select ?