loyung

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在mongodb的查询语句中可以这么写{“a”:$gt(1),"a":$lt(5)}

但这么查询出来的值会做单个条件匹配,最终结果为a大于1的集合+a小于5的集合

如果需要实现去交集,a大于1并且又小于5,就必须要用到$and函数了

同条件并列查询:

{
   $and:[{"_id":{$gte:ObjectId("59512f800000000000000000")}},
   {"_id":{$lte:ObjectId("595280ff0000000000000000")}}],
   "url":"http://url"
}
    

 模糊查询:

使用$regex函数正则模糊查询

{"url":{$regex:"http://www.baidu.com.cn/\\?"}}

简易式模糊查询

{"url":/www.baidu.com/}

查询字段存在的记录

{"ui":{$exists:true}}

查询为空的字段

{name:{$in:[null]}}

查询字段不为空

{name:{$ne:null}}

 多正则匹配查询or查询

$or:[{"url":{$regex:/http:\/\/(www|m).baidu.com.cn\/netshow\/(.*)\/news(.*).htm/}},
{"url":{$regex:/http:\/\/www.baidu.com.cn\/hot\/(.*)/}}]

  多正则匹配查询or查询,简单写法

"$or":[{"url":/www.xxx.com.cn/},{"url":/bbs.xxx.com.cn/}]

 

and查询

$and:[{"ui":{$exists:true}},{"ui":{$ne:0}}] 

 

posted on 2017-07-04 09:53  loyung  阅读(2575)  评论(0编辑  收藏  举报