此处是基于MongoDB中的查询(find)、修改(update)和删除(remove)操作,用于数据筛选匹配(query)较为完整的用法。
| 操作符 | 含义 | 示例 | 意思 |
| 比较操作符 | |||
| $eq | 等于 (=) | db.class0.find({age:{$eq:17}},{_id:0}) | 筛选年龄等于17的 db.class0.find({age:17},{_id:0}) |
| $lt | 小于(<) | db.class0.find({age:{$lt:17}},{_id:0}) | 筛选年龄小于17的 * mongo中字符串也可以比较大小 |
| $lte | 小于等于(<=) | db.class0.find({age:{$lte:17}},{_id:0}) | |
| $gt | 大于(>) | db.class0.find({age:{$gt:17}},{_id:0}) | |
| $gte | 大于等于(>=) | db.class0.find({age:{$gte:17}},{_id:0}) | |
| $ne | 不等于(!=) | db.class0.find({age:{$ne:17}},{_id:0}) | * 如果一个文档没有这个age域则显示为不等于 |
| $in | 包含 | db.class0.find({age:{$in:[16,17,18]}},{_id:0}) | |
| $nin | 不包含 | db.class0.find({age:{$nin:[16,17,18]}},{_id:0}) | |
| 逻辑操作符 | |||
| $and | 逻辑与 | db.class0.find({$and:[{age:17},{name:'Lei'}]}) | |
| $or | 逻辑或 | db.class0.find({$or:[{age:{$lt:18}},{age:{$gt:30}}]},{_id:0}) | |
| $not | 逻辑非 | db.class0.find({age:{$not:{$eq:17}}},{_id:0}) | |
| $nor | 既不也不 | db.class0.find({$nor:[{age:{$gt:18}},{sex:'m'}]},{_id:0}) | * 表示列表集合中的条件都不具备 |
| 数组查找 | |||
| $all | 查找一个数组中同时包含多项的文档 | db.class1.find({hobby:{$all:['拍电影','代言']}},{_id:0}) | 查找hobby数组中既有拍电影,又有代言的文档 |
| $size | 查找数组元素个数为指定个数的文档 | db.class1.find({hobby:{$size:3}},{_id:0}) | 查找hobby数组中包含三项的文档 |
| $slice | 对数组切片显示,放在field中 | db.class1.find({hobby:{$size:3}},{_id:0,hobby:{$slice:2}}) | 显示hobby数组的前两项 |
| 其他查找 | |||
| $exists | 判断一个域是否存在(true:存在;false:不存在) | db.class0.find({sex:{$exists:true}},{_id:0}) db.class0.find({sex:{$exists:false}},{_id:0}) | 查找存在sex域的文档 查找不存在sex域的文档 |
| $mod | 做除数余数查找 | db.class0.find({age:{$mod:[2,1]}},{_id:0}) | 查找年龄被2除余1的文档 |
| $type | 查找指定数据类型的文档 | db.class1.find({hobby:{$type:2}},{_id:0}) | 查找hobby中包含数据类型为 2 的数据的文档 |
附:python的数据类型
| Type | Number | Alias | Notes |
|---|---|---|---|
| Double | 1 | “double” | |
| String | 2 | “string” | |
| Object | 3 | “object” | |
| Array | 4 | “array” | |
| Binary data | 5 | “binData” | |
| Undefined | 6 | “undefined” | Deprecated. |
| ObjectId | 7 | “objectId” | |
| Boolean | 8 | “bool” | |
| Date | 9 | “date” | |
| Null | 10 | “null” | |
| Regular Expression | 11 | “regex” | |
| DBPointer | 12 | “dbPointer” | Deprecated. |
| JavaScript | 13 | “javascript” | |
| Symbol | 14 | “symbol” | Deprecated. |
| JavaScript (with scope) | 15 | “javascriptWithScope” | |
| 32-bit integer | 16 | “int” | |
| Timestamp | 17 | “timestamp” | |
| 64-bit integer | 18 | “long” | |
| Decimal128 | 19 | “decimal” | New in version 3.4. |
| Min key | -1 | “minKey” | |
| Max key | 127 | “maxKey” |
官方查询地址:https://docs.mongodb.com/manual/reference/operator/query/type/
附录:目录
版权声明:本文为qq_27297393原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。