1、条件>,<,>=,<=在MongoDB中的写法
>:$gt,<:$lt,>=:$gte,<=:$lte,<>:$ne
具体使用方法:
db.class.find({"filed":{$gt:value}}) filed>value
db.class.find({"filed":{$lt:value}}) filed<value
db.class.find({"filed":{$gte:value}}) filed>=value
db.class.find({"filed":{$lte:value}}) filed<=value
db.class.find({"filed":{$gt:value,$lt:value1}}) value1>filed>value
db.class.find({"filed":{$ne:5}}) filed<>value
db.class.find({"stuCount":{$gt:10}}) db.class.find({"stuCount":{$gte:10}})
db.class.find({"stuCount":{$lt:10}}) db.class.find({"stuCount":{$lte:10}})
db.class.find({"stuCount":{$lt:10,$gt:5}})db.class.find({"stuCount":{$ne:5}})
2、$all匹配所有
这个操作符跟 SQL 语法的 in 类似,但不同的是, in 只需满足( )内的某一个值即可, 而$all 必
须满足[ ]内的所有值
db.class.find({stuCount:{$all:[6,8]}}) 查询结果为空
db.class.find({stuCount:{$all:[6]}}) 可以查出一条,等同于db.class.find({"stuCount":6})
3、$in包含
与 sql 标准语法的用途是一样的,即要查询的是一系列枚举值的范围内
db.class.find({stuCount:{$in:[6,8]}})
4、$nin不包含
db.class.find({stuCount:{$nin:[6,8]}})
5、判断字段是否存在
db.class.find({stuCount:{$exists:true}})
6、NULL值处理
db.class.find({name:null}) 会查询出没有name字段的数据
db.class.find({name:{"$in":[null],"$exists":true}}) 查询结果为有name字段,且name=null
7、$mod取余
db.class.find({stuCount:{$mod:[7,2]}}) 对7取余等于2