MongoDB命令模式下的条件过滤总结

 

增加查询条件的方式去重

 db.inventory.distinct( "item.sku", { dept: "A" } )

 

db.tb1.find() //查询全部,用it查看下一页。
db.tb1.find({"age":1}) //查询年龄==1的记录
db.tb1.find({},{"age":1}) //查询年龄==1的记录
db.tb1.find({"name":{$all:["a","b"]}}) //查询name含有a,b的记录
db.tb1.find({"name":{$exists:true}}) //查询存在name字段的记录。
db.tb1.find({"age":{$nin:[12,14]}}) //查询age不含12,14值的记录。
db.tb1.find({name) //查询name含a字母的记录

.......
总结如下:
查询格式如下:Db.collection.find({“field”: { operator: val}})
field为colleciton的字段名,operator为操作符,val为比较值。
operator有如下:
$gt,$gte,$lt,$lte: val  v1.
$all :都有, val  {v1,v2,v3...}
$exists:存在, val  true/false;
$ne :不等于, val  v1
$mod: 取模。 Val  [v1取模数,v2余数]
$in :包含某值,val  [v1,v2,v3...]
$nin :不包含某值,val  [v1,v2,v3...]
$size: 指定长度数组, val  v1
$regex: 正则查询,val  v1 :通配符查询:/s/ ,但是s/,/是这样语法错误。
Javascript查询: 编写function,然后查询。

>Find(条件).count() / limit(v) /skip(v) /sort({“field”: 1/-1},{“field2”: 1/-1}...)
分页查询,通过limit,skip,sort组合进行分页查询。
如每页X条,第N页
> Find(条件).SKIP * X).Limit(X).SORT.
distinct: 查询指定键的不同值。db.runCommand({"distinct":”集合名","key":"字段名"})
group: 较复杂。

db.COMMODITY_COMMODITY.find(
        {
            "areaCode" : "320100" ,
            "backCatalogId" : { "$in" : [ 111111, 22222]} ,
            "typeCode" : { "$in" : [ "appointment" , "groupon"]} ,
            "status" : "1" ,
            "name" : { "$regex" : "汽车"}
        },{"backCatalogId":true,"_id":0}

db.tb1.find() //查询全部,用it查看下一页。
db.tb1.find({"age":1}) //查询年龄==1的记录
db.tb1.find({},{"age":1}) //查询年龄==1的记录
db.tb1.find({"name":{$all:["a","b"]}}) //查询name含有a,b的记录
db.tb1.find({"name":{$exists:true}}) //查询存在name字段的记录。
db.tb1.find({"age":{$nin:[12,14]}}) //查询age不含12,14值的记录。
db.tb1.find({name) //查询name含a字母的记录

.......
总结如下:
查询格式如下:Db.collection.find({“field”: { operator: val}})
field为colleciton的字段名,operator为操作符,val为比较值。
operator有如下:
$gt,$gte,$lt,$lte: val  v1.
$all :都有, val  {v1,v2,v3...}
$exists:存在, val  true/false;
$ne :不等于, val  v1
$mod: 取模。 Val  [v1取模数,v2余数]
$in :包含某值,val  [v1,v2,v3...]
$nin :不包含某值,val  [v1,v2,v3...]
$size: 指定长度数组, val  v1
$regex: 正则查询,val  v1 :通配符查询:/s/ ,但是s/,/是这样语法错误。
Javascript查询: 编写function,然后查询。

>Find(条件).count() / limit(v) /skip(v) /sort({“field”: 1/-1},{“field2”: 1/-1}...)
分页查询,通过limit,skip,sort组合进行分页查询。
如每页X条,第N页
> Find(条件).SKIP * X).Limit(X).SORT.
distinct: 查询指定键的不同值。db.runCommand({"distinct":”集合名","key":"字段名"})
group: 较复杂。

db.COMMODITY_COMMODITY.find(
        {
            "areaCode" : "320100" ,
            "backCatalogId" : { "$in" : [ 111111, 22222]} ,
            "typeCode" : { "$in" : [ "appointment" , "groupon"]} ,
            "status" : "1" ,
            "name" : { "$regex" : "汽车"}
        },{"backCatalogId":true,"_id":0}
扫描二维码关注公众号,回复: 4939136 查看本文章

猜你喜欢

转载自www.cnblogs.com/williamjie/p/10276473.html