db.表名.find({goods_id:3});                     //查询出 goods_id 为 3 的数据
       db.表名.find({cat_id:{$ne:3}},{cat_id:1,goods_name:1,_id:0});                   
//查询出分类 id 不等于 3 的商品名称和分类 id  
       db.表名.find({cat_id:{$not:3}},{cat_id:1,goods_name:1,_id:0});                   
//查询出分类 id 不等于 3 的商品名称和分类 id 
                         $lt                    
小于
                         $lte                  
小于或等于
                         $gt                    大于
                         $gte                  大于或等于
                         $in                     in(如 cat_id:{$in:[3,4]} 分类 id 是 3和 4 的)
                         $nin                   not in(如 cat_id:{$nin:[3,4]} 分类 id 不是 3和 4 的)
                         $all                    无对应项,指数组中所有单元匹配
       db.表名.find({$and:[{shop_price:{$gte:100}},{shop_price:{$lte:500}}]},{shop_price:1,goods_name:1});
       ////查询出商品价格大于等于100 and 小于等于500 的商品价格、商品名称
       db.表名.find({$nor:[{cat_id:3},{cat_id:11}]},{shop_price:1,goods_name:1});          //查询出分类 id 不等于 3 和 分类 id 不等于 11 的数据
       db.表名.find({goods_id:{$mod:[5,0]}},{cat_id:1,goods_name:1,_id:0});                    //查询出商品 id 模 5 等于0 的分类 id 和 商品名称 
 
      db.表名.find({age:{$exists:1}});                                                 //查询出存在年龄属性的数据
      db.表名.find({age:{$type:1}});                                                   //查询出年龄属性类型为 double 类型的
                                             2                                     
字符串类型(更多类型请百度)
     

      db.表名.find({hobby:{$all:['a','b']}});                                                 //查询出爱好中有 a 和 b 的数据(必须都满足
      db.表名.find({$where:'this.age>18 && this.age<25'});                                                //查询出所有年龄大于 18 并且小于 25 的数据(必须要把二进制数据再转换成 json 对象进行匹配,所以效率比较低,而其他条件表达式只通过二进制比对形式匹配。)
      db.表名.find({goods_name:{$regex:/^诺基亚.*/}});                                           //正则匹配查询出所有数据中商品名称诺基亚开头的(效率不高,慎用)
      db.表名.find().sort({age:1/-1});                                                                          //按年龄排序(1 为升序,2为降序)

mongodb 的查询深入剖析的更多相关文章

  1. TODO:MongoDB的查询更新删除总结

    TODO:MongoDB的查询更新删除总结 常用查询,条件操作符查询,< .<=.>.>=.!= 对应 MongoDB的查询操作符是$lt.$lte.$gt.$gte.$ne ...

  2. MongoDB各种查询操作详解

    这篇文章主要介绍了MongoDB各种查询操作详解,包括比较查询.关联查询.数组查询等,需要的朋友可以参考下   一.find操作 MongoDB中使用find来进行查询,通过指定find的第一个参数可 ...

  3. Mongodb高级查询【二】

    上一篇文章,写了mongodb常规操作,继续写入,本章主要讲高级查询,文本,聚集,大数据查询. Mongodb的查询语法是很多的,是NOSQL队伍中比较丰富的一个.当然有很多查询跟关系型查询无法相比. ...

  4. mongoDB高级查询$type4array使用解析

    今天在使用mongoDB高级查询$type:符号 -- 4代指Array类型发现一个问题. $type符号: $type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果. 下面是mong ...

  5. MongoDb 命令查询所有数据库列表

    原文:http://blog.csdn.net/huxu981598436/article/details/47216493 MongoDb 命令查询所有数据库列表 CODE: > show d ...

  6. mongodb并列查询,模糊查询

    在mongodb的查询语句中可以这么写{“a”:$gt(1),"a":$lt(5)} 但这么查询出来的值会做单个条件匹配,最终结果为a大于1的集合+a小于5的集合 如果需要实现去交 ...

  7. mongodb中查询返回指定字段

    mongodb中查询返回指定字段   在写vue项目调用接口获取数据的时候,比如新闻列表页我只需要显示新闻标题和发表时间,点击每条新闻进入详情页的时候才会需要摘要.新闻内容等关于此条新闻的所有字段.  ...

  8. MongoDB 数据类型查询 — $type使用

    MongoDB 使用过程中经常需要根据字段的类型来查询数据, 而MongoDB中查询字段类型是通过$type操作符来实现. $type使用法语: db.集合名.find({$type:类型值}); / ...

  9. mongoDB 高级查询语法

    http://www.cnblogs.com/ITAres/articles/2084794.html本文参考自官方的手册:http://www.mongodb.org/display/DOCS/Ad ...

随机推荐

  1. MySQL循环语句之while循环测试

    转自:http://www.nuoweb.com/database/7614.html MySQL有循环语句操作,while 循环.loop循环和repeat循环,目前我只测试了 while 循环,下 ...

  2. Edge浏览器的几个创意应用

    如果你跟我一样也喜欢书法,并且也有surface.那你可以进入我的网页.我给您准备了中国书法纸.信纸.方格子.对联等模板.满足您打发时间,精心抄佛经.诗歌,练书法等.开启Edge浏览器,开启涂鸦模式, ...

  3. Java8新特性 利用流和Lambda表达式对List集合进行处理

    Lambda表达式处理List 最近在做项目的过程中经常会接触到 lambda 表达式,随后发现它基本上可以替代所有 for 循环,包括增强for循环.也就是我认为,绝大部分的for循环都可以用 la ...

  4. Monitor (synchronization)条件变量-安全对象

    In concurrent programming, a monitor is a synchronization construct that allows threads to have both ...

  5. redis做成windows服务

    打开cmd切换到redis根目录 执行安装命令  redis-server.exe --service-install redis.windows.conf --loglevel verbose 卸载 ...

  6. Fiddler 接口测试(Composer)的使用方法

    原文:Fiddler 接口测试(Composer)的使用方法 下载地址:https://www.telerik.com/download/fiddler 一.Composer简介 右侧Composer ...

  7. 【codeforces 20B】Equation

    [题目链接]:http://codeforces.com/contest/20/problem/B [题意] 给你一个方程,让你输出这个方程的解的情况. [题解] a==0,b==0,c==0时,为恒 ...

  8. 从头认识java-17.2 线程中断(interrupt)

    这一章节我们来讨论一下线程中断(interrupt). 1.什么是线程中断(interrupt)? 就是在多线程执行的时候,我们给线程贴上一个中断的标记.可是不要求线程终止. 2.样例: 中断的样例: ...

  9. 逆向project第003篇:跨越CM4验证机制的鸿沟(上)

    一.前言 <冠军足球经理>系列作为一款拟真度极高的足球经营类游戏.赢得过无数赞誉,而CM4可以说是这个传奇的起点. 可是在游戏安装过程中.当用户输入完序列号之后.程序并不会对用户的输入进行 ...

  10. hibernate ID生成策略配置

    1.Student.hbm.xml配置 <hibernate-mapping package="com.wxh.hibernate.model"> <class ...