1. 条件操作符 类似于sql语句中的(>)(<)(>=)(<=)
大于(>): -
gt小于(<):−
lt
大于等于(>=) : -
gte小于等于(<=):−
lte
实例:
db.person .find({“age” : {$gt : 10}}) 等价于sql语句Select * from person where age > 10;
区间查询:
db.person .find({age: {$lt :20, $gt : 10}}) 等价于Select * from person where age>10 AND age<20;
2. $type 操作符
基于BSON类型来检索集合中匹配的数据类型,并返回结果
实例:获取 “person” 集合中 name为 String 的数据
db.person.find({“name” : {$type : 2}})
3.limit()方法和skip()方法
limit()方法:在MongoDB中读取指定数量的数据记录
语法:
db.COLLECTION_NAME.find().limit(NUMBER)
参数说明:
NUMBER:指定从MongoDB中读取的记录条数,若没有指定limit()方法中的参数则显示集合中所有数据
skip()方法:在MongoDB中跳过指定数量的数据
db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)
参数说明:
NUMBER:(默认为0)指定从MongoDB中读取的记录条数,若没有指定limit()方法中的参数则显示集合中所有数据
实例:
读取从 10 条记录后 100 条记录,等价于 sql 中limit (10,100)
db.COLLECTION_NAME.find().skip(10).limit(100)
注意:
skip和limit方法只适合小数据量分页,如果是百万级效率就会非常低,因为skip方法是一条条数据数过去的
当查询时同时使用sort,skip,limit,无论位置先后,执行顺序: sort–>skip–>limit
4.排序:sort()方法
语法:
db.COLLECTION_NAME.find().sort({KEY:1})
参数说明:
通过参数指定排序的字段,使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而-1是用于降序排列
实例:
db.person.find({},{“name”:1,_id:0}).sort({“age”:-1})
find()方法中的参数说明:
第一个 {} 放 where 条件,为空表示返回集合中所有文档。
第二个 {} 指定那些列显示和不显示 (0表示不显示 1表示显示)
sort()方法中的参数说明:
根据age降序排列