目录
mongoDB的常用操作符
mongoDB的聚合管道符号
db.collection.aggregate( [ { }, … ] )
使用aggregate()方法来构建和使用聚合管道。
比较操作符
- $eq“=” 等于
- $gt “>” 大于
- $gte”>=“ 大于等于
- $lt “<” 小于
- $lte ”<= “小于等于
- $ne ”!="不等于
- $in 相当于MySQL的in
- $nin相当于MySQL的nin
案例:db.<****CollectionName**>.find(**{ <field>: { $gt: <value> } })
逻辑运算符
- $or OR或相当于MySQL的OR
案例:
db.<****CollectionName**>**.find({ KaTeX parse error: Undefined control sequence: \[ at position 4: or:\̲[̲{<field\>:{ lt:<value>}},{<field>:<value>}], <field>:<value>})
limit 跳过指定数量的文档
skip 查询指定数量的文档
案例:
db.<****CollectionName**>**.find({}).skip(20).limlit(20)
注意注意注意
1. 区间查询
假如说我们查询一个年龄大于等于30,小于等于60的一定要采用 $and逻辑符号,这样查询;
正确案例:
db.<****CollectionName**>**.find({ KaTeX parse error: Undefined control sequence: \[ at position 4: and\̲[̲{age:{ gte:30}},{age:{$lte:60}}]})
或者:
db.<****CollectionName**>**.find({age:{ g t e : 30 , gte:30, gte:30,lte:60}})
错误案例:(这种他不是区间查询,age大于等于30和小于等于60的都会查询出来)
db.<****CollectionName**>**.find({age:{ KaTeX parse error: Expected 'EOF', got '}' at position 7: gte:30}̲,age:{ lte:60}})
2.NumberLong类型强转
Mongo的NumberLong类型查询要强转。
假如说我们age字段是NumberLong类型的。查询的时候需要强转一下,不然呢查询不到
正确案例:
db.heartBpmHistory.find({age:{ g t e : N u m b e r L o n g ( ′ 3 0 ′ ) , gte:NumberLong('30'), gte:NumberLong(