第一个参数决定要返回那些文档
db.test.find()返回所有文档
db.test.find({"age":27})
db.test.find({"username":"joe"})
db.test.find({"username":"joe","age":27})and的关系
第二参数指定想返回的键
db.test.find({},{"username":1,"email":1})   只会有username和emial和id
db.test.find({},{"_id":0,"username":1})   id被剔除
查询条件
“$lt”、"$lte"、"$gt"、"$gte"  < <= > >=
db.test.find({"age":{"$gte":18,"$lte":30}})   查询年龄在18-30的
“$ne" 不等于  
db.test.find({"username":{"$ne":"joe"}})
 
OR查询两种方式:$in :查询一个键的多个值 $or:在多个键中查询任意的给定值
db.raffle.find({"ticket_no":{"$in":[725,542,390]}})   查出所有中奖号码(725,542,390) 的全部号码
db.users.find({"user_id":{"$in":[12345,"joe"]})    
{ticket_no:{$in:[725]}}和{ticke_no:725}的效果一样的
 
$nin与in相反
 
 
$or 可以包含多个条件
 
db.raffle.find({"$or":[{"ticket_no":725},{"winner":true}]})
db.raffle,find({"$or":[{"ticket_no":{"$in":[725,542,390]}},{"winner":true}]})
 
$not 是元条件句,可以在任何其他条件之上   例:
db.users.find({"id_num":{"$mod":[5,1]}})   取5的余数是1的,1.6.11.16
db.users.find({"id_num":{"$not":{"$mod":[5,1]}}})  取没有匹配到的
 
 
条件语句是内层文档的键,而修改器则是外层文档的键
查询null语句
db.c.find({"z":{"$in":[null],"$exists":true}})
 
mongdb支持js的所有正则表达式
db.users.find({"name":/joe/i})
4.33查询数组
1、$all   既要有"apple"又有“banana”的文档
db.food.find({fruit:{$all:["apple"],"banana"}})
2、$size  指定长度的数组  
3、$slice 是find的第二个参数,指定需要返回的键,返回前10.返回后10返回10-20之间
db.blog.posts.findOne(criteria,{"comments":{"$slice":10}})
db.blog.posts.findOne(criteria,{"comments":{"$slice":-10}})
db.blog.posts.findOne(criteria,{"comments":{"$slice":[10-20 ]}})
db.blog.posts.findOne(criteria,{"comments":{"$slice":-1}})返回最后一条评论
 
4、返回一个匹配的数组元素
 
如果知道元素的小标用$       db.blog.posts.find({"coments.name":"bob"},{"comments.$":1})
 
5、数组和范围查询的相互作用
 
6.$where 可以使用任意的javascript
7.服务器端使用javascript脚本使用作用域
8.游标  
9.limit  限制返回数量
db.collection.find().limit(3)
10。skip和limit除去前三条剩下
11.sort 顺序
sort()接受一个参数,值代表排序的方向,-1降序1升序  
例如:一个分页搜索
db.stock.find({"desc":"mp3"}).limit(50).sort({"price":-1})
显示更多页
db.stock.find({"desc":"mp3"}).limit(50).skip(50).sort({"price":-1})
12比较顺序
最小值 null 数字 字符串 对象/文档 数组 二进制数据 对象id 布尔型 日期型 时间戳 正则表达式 最大值
 
13 高级查询选项
$maxscan $min $max $ showDiskLoc
14 获取一直结果

mongodb(4查询)的更多相关文章

  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 ...

  10. 转】Nodejs对MongoDB模糊查询

    原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/4/ 感谢! Posted: Jul 1, 2013 Tag ...

随机推荐

  1. WebDriver 随笔

    在webDriver中通过 driver.findElement进行定位元素时,往往是从页面的上到下依次寻找,根据该等位方式寻找到第一个元素. driver.findElement(By.id())有 ...

  2. paper 53 :深度学习(转载)

    转载来源:http://blog.csdn.net/fengbingchun/article/details/50087005 这篇文章主要是为了对深度学习(DeepLearning)有个初步了解,算 ...

  3. mybatis(二)执行CRUD操作的两种方式配置和注解

    一.使用MyBatis对表执行CRUD操作——基于XML的实现 1.定义sql映射xml文件 userMapper.xml文件的内容如下: <?xml version="1.0&quo ...

  4. 深入了解webservice_概念总结

    最近公司需要对java web端的第三方接口进行测试,使用WebService+TestNG实现,TsetNg是常用的自动化测试框架,这就不介绍了. WebService是一种跨编程语言和跨操作系统平 ...

  5. JavaScript获取后台C#变量以及调用后台方法

    http://www.educity.cn/develop/495493.html 有时需要在JavaScript中获取后台变量的值,来判断JavaScript的执行逻辑,或者需要调用C#后台方法获取 ...

  6. SSIS 关于并发的两个设置

    1.MaxConcurrentExecutables(包级别的并发度控制) MaxConcurrentExecutables, a package level property in SSIS det ...

  7. vsftp黑白名单设置及问题

    问题一:ftpusers和user_list两个文件各自的用途是什么?有何关系? 首先请明确一点:ftpusers不受任何配制项的影响,它总是有效,它是一个黑名单!该文件存放的是一个禁止访问FTP的用 ...

  8. Spring注解@Scheduled定时任务

    一.首先配置applicationContext-task.xml (1)添加 xmlns:task="http://www.springframework.org/schema/task& ...

  9. HDU 2136:Computer(树形DP)

    http://acm.split.hdu.edu.cn/showproblem.php?pid=2196 Computer     Description A school bought the fi ...

  10. 快速排序算法(Java)

    快速排序算法的基本思想是:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另外一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序. class Parti ...