今天来学习在mongodb中的一些其他查询语句的用法,主要包含以下内容:
1、逻辑运算符$not
比如:查询user表age不为18的数据:
db.user.find({age:{$ne:18}})
db.user.find({age:{$not:{$eq:18}}})
注意:如果需要查询的字段不存在, 也会算作条件成立
2、逻辑运算符$and
比如查询user表name为“小博”,并且age为17的数据
db.user.find({name:"小博",age:17})
db.user.find({$and:[{name:"小博"},{age:17}]})
注意: $and后面必须对应一个数组格式,否则会报错:
3、逻辑运算符$or
比如查询user表中name为“小博”或者“测试小博”的数据:
db.user.find({name:{$in:['小博','测试小博']}})
db.user.find({$or:[{name:{$eq:'小博'}},{name:{$eq:'测试小博'}}]})
db.user.find({$or:[{name:'小博'},{name:'测试小博'}]})
4、逻辑运算符$nor
针对前面的$and、$or、$not的用法,大家可能见到过,但对于$nor操作,可能见的少一点,$nor简单的理解就是:多个条件中不满足其中的某一个。
比如查询name不为“小博”或者“测试小博”的数据:
db.user.find({name:{$nin:['小博','测试小博']}})
db.user.find({$nor:[{name:'小博'},{name:'测试小博'}]})
注意:如果需要查询的字段不存在, 也会算作条件成立