# 单个字段查询db.col.find({filed1: 'aaa'})# 正则查询db.col.find({issn: /^1530-\d+?X$/}/})# 控制输出db.col.find({filed1: 'aaa'}, {_id: 0, field1: 1, field2: 1})# $in查询db.col.find({field1: {$in: ['aaa', 'abc', 'bbb']}})# $and查询db.col.find({$and: [{field1: 'aaa'}, field2: 'bbb'}]}) # 下面的方式更好db.col.find({field1: 'aaa', field2: 'bbb'})# $or查询db.col.find({$or: [{field1: 'aaa'}, {field2: 'bbb'}]})# $lt, $lte, $eq, $ne, $gt, $gtedb.col.find({field1: {$gte: 5}})# 日期查询db.col.find({field1: {$gte: ISODate(20190802)}})# $type 按类型查询db.col.find({field1: {$type: 2}})db.col.find({field1: {$type: 'string'}})# 控制查询结果的输出, 如输出10-15行结果db.col.find({field1: 'aaa'}).skip(10).limit(5)# 对查询结果进行排序db.col.find({field1: 'aaa'}).sort({field2: 1}) # 升序db.col.find({field1: 'aaa'}).sort({field2: 1}) # 降序
$type类型和对应数字
| 类型 | 数字 | 备注 |
|---|---|---|
| Double | 1 | |
| String | 2 | |
| Object | 3 | |
| Array | 4 | |
| Binary data | 5 | |
| Undefined | 6 | 已废弃。 |
| Object id | 7 | |
| Boolean | 8 | |
| Date | 9 | |
| Null | 10 | |
| Regular Expression | 11 | |
| JavaScript | 13 | |
| Symbol | 14 | |
| JavaScript (with scope) | 15 | |
| 32-bit integer | 16 | |
| Timestamp | 17 | |
| 64-bit integer | 18 | |
| Min key | 255 | Query with -1. |
| Max key | 127 |
