1 查询所有记录
db.cname.find()
2 精确值查询
db.cname.find({name:'lili'})
db.cname.find({name:'lili',age:22})
3 比较查询
db.cname.find({age: {$gt: 22}}) //age大于22的记录
db.cname.find({age: {$gt: 22, $lt: 25}}) //age大于22小于25的记录
条件 | > | < | >= | <= | = | != |
标记 | $gt | $lt | $gte | $lte | $eq | $ne |
4 模糊查询(正则表达式)
db.cname.find({name: /mongo/}) //内容包含mongo
db.cname.find({name: /^mongo/}) //内容以mongo开头
db.cname.find({name: /mongo$/}) //内容以mongo结尾
5 查询指定列
db.cname.find({}, {name: 1, age: 1}) //1等同于true,表示保留该列
6 去除重复值
db.cname.distinct("name") //去掉name值重复的记录
7 查询结果排序
db.cname.find({age: {$gt: 22}}).sort({age: 1}) //age升序
db.cname.find().sort({age: -1}) //age降序
8 查询范围
db.canme.findOne() //查询第一条
db.cname.find().limit(10) //查询前10条 1-10
db.cname.find().skip(5) //查询第5条以后的数据,6-max
db.cname.find().limit(10).skip(5) //6-10
9 或查询
db.cname.find($or:[{age: 22},{age: {$gt: 25}}]) //age22或者大于25
10 统计记录数量
db.cname.find({name: 'lili'}).count() //统计符合条件的
db.cname.find().skip(10).limit(5).count()//统计符合条件的全部
db.cname.find().skip(10).limit(5).count(1) //1可以改为true,表示统计范围的