上篇主讲mongodb的简易查询
语法:db.collection.find(查询表达式,查询的列)
查询全部
db.serviceApply.find()
db.serviceApply.find({})
查询一个
db.serviceApply.findOne()
带单个条件查询
db.serviceApply.find({serviceId: 103}) 等价 db.serviceApply.find({"serviceId": 103})
带单个条件查询指定列
db.serviceApply.find({serviceId: 103},{serviceId:1}) 查找对serviceId, _id 没用serviceId的列也会出来
带多个条件 以及多个列
db.serviceApply.find({serviceId: 103, state : 0}, {serviceId:1,state:1}) 查找对serviceId, _id state
--排序 sort({})
db.serviceApply.find({}).sort({_id:1}) --正序db.serviceApply.find({}).sort({_id:-1}) --倒叙
-- 查询条数 limit(N)
db.serviceApply.find({}).limit(3)
第几条开始 skip (N)
db.serviceApply.find({}).skip(1).limit(2).sort({_id:-1})
不等于 $ne
实列 db.stu.find({"age":{$ne:19}}) --查询出不含age字段以及不等于19的数据
等于
大于 $gt 小于 $lt 大于等于 $gt e 小于等于 $lte
实列 : db.serviceApply.find({state:{$gt: 0}})
db.serviceApply.find({state:{$gt: 0 , $lte:4}}) --state大于0 小于等于4
在范围之内
实列 db.stu.find({"age":{$in:[20,19,25]}})
或
实列 db.serviceApply.find({$or:[{state:0},{state:1}]})
存在- $exsist
db.stu.find({"age":{{$exists:1}}}) ----求包含age字段并且age不为19的
$where 效率低 不举列了