`
2008winstar
  • 浏览: 57850 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
  • chenke: 写的很好,也可以看看那这个文章,我感觉学的还可以。http:/ ...
    HTML

MongoDB的find操作详解

 
阅读更多

   MongoDB使用find来执行查询。find的第一个参数相当于where,其形式也是一个文档,说明查询所需匹配的条件,文档中的多个key/value能够实现类似AND的操作。

 

   1 指定所需返回的键 (默认总会返回“_id"键,除非声明为0)

db.mydb.find({}, {"name": 1, "_id": 0})

 

   2 指定复杂查询条件,可以利用"$lt"、"$lte"、"gt"、"gte"和"$ne"等比较操作符,形成复杂的查询条件。

db.mydb.find({"age": {"$gte": 10, "$lte": 20}})

 

   3 OR查询 

db.mydb.find({"age": {"$in": [10, 20, 30])))

 

db.mydb.find({"age": {"$nin": [10, 20, 30]}})

 

db.mydb.find({"$or": [{"gender": "female"}, {"name": "winstar"}]})

   

   4 $mod条件

db.mydb.find({"age": {"$mod": [3, 2]}})

 

   5 $not条件

db.mydb.find({"age": {"$not": {"$mod": [3, 2]}}})

 

   6 null 

   (1)简单方式

db.mydb.find({name: null})

   将匹配“name"的值为null的文档以及根本没有”name“这个字段的文档。

   

   (2)复杂方式--确保含有”name”字段,但值为null的文档

db.mydb.find({"name": {"$in": [null], "$exists": true}})

 

   7 正则表达式

db.mydb.find({"name": /winstar/i})

 

   8 根据单个数组元素值查询

db.mydb.insert({"friends": ["winstar", "jack", "john"]})
db.mydb.find({"friends": "jack"})

 

   9 根据数据中的多个元素值查询

db.mydb.find({"friend": {"$all": ["jack", "john"]}})

 

   10 根据数组指定位置的元素值查询

db.mydb.find({"friends.1": "jack"})

 

   11 根据数组的长度查询

db.mydb.find({"friends": {"$size": 3}})

 

   12 指定查询返回的条数 limit

db.mydb.find().limit(10)

 

   13 根据字段是否存在的查询

db.mydb.find({age: {"$exists": true}})
db.mydb.find({age: {"$exists": false}})

 

   14 返回查询记录条数

db.mydb.find().count()

   

   15 返回整个集合的记录条数

db.mydb.count()

 

   16 限制返回记录的起点

db.mydb.find().skip(1).limit(1)

 

   17 按某个字段升序排序

db.mydb.find().sort({age: 1})

 

   18 按某个字段降序排序

db.mydb.find().sort({age: -1})

 

分享到:
评论

相关推荐

    MongoDB之查询详解

    文档详细描述了MongoDB使用find或者findOne时的shell查询语法,对于掌握mongoDB是非常有用的

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...

    MongoDB各种查询操作详解

    一、find操作 MongoDB中使用find来进行查询,通过指定find的第一个参数可以实现全部和部分查询。 1、查询全部 空的查询文档{}会匹配集合的全部内容。如果不指定查询文档,默认就是{}。 2、部分查询 3、键的筛选 键...

    MongoDB 查询操作的实例详解

    MongoDB 查询操作的实例详解 使用find或findOne进行查询。并可以进行范围查询、数据集查询、不等式查询,以及其他的一些查询。 查询将会返回DBcursor 游标只有在你需要的时候返回文档 针对游标返回的文档(结果集...

    深入云计算 MongoDB管理与开发实战详解pdf.part2

    《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...

    MongoDB 中Limit与Skip的使用方法详解

    MongoDB 中Limit与Skip的使用方法详解 一 MongoDB Limit() 方法 如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。...

    MongoDB 游标详解及实例代码

    MongoDB 游标详解 MongoDB中的游标与关系型数据库中的游标在功能上大同小异。游标相当于C语言的指针,可以定位到某条记录,在MongoDB中,则是文档。因此在mongoDB中游标也有定义,声明, 打开,读取,关闭这么个过程...

    MongoDB查询之高级操作详解(多条件查询、正则匹配查询等)

    MongoDB查询之高级操作 语法介绍 MongoDB查询文档使用find()方法,同时find()方法以非结构化的方式来显示所有查询到的文档。 -- 1.基本语法 db.collection.find(query, projection) -- 返回所有符合查询条件的文档 ...

    mongodb 添加用户及权限设置详解

    例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢。 一,掌握权限,理解下面4条基本上就差不多 1,mongodb是...

    mongodb 集群重构和释放磁盘空间实例详解

    MongoDB集群重构,释放磁盘空间 由于mongodb删除了一部分数据后,不会回收相应的磁盘空间,所以这里通过重建数据目录的方式释放磁盘空间。 一 实验环境 配置了一个副本集,该副本集由以下三个节点组成...db.c.find()

    在php7中MongoDB实现模糊查询的方法详解

    在实际开发中, 有不少的场景需要使用到模糊查询, MongoDB shell 模糊查询很简单: db.collection.find({'_id': /^5101/}) 上面这句就是查询_id以’5101’开始的内容。 在老的MogoDB中模糊查询挺简单的,这里简单...

    MongoDB如何查询耗时记录的方法详解

    explain方法是用来查看db.collecion.find()的一些查询信息的。例如: db.collectionName.find().explain() explain方法有个可选的参数verbose,是个字符串,他表示的是verbose的模式。一共分为3种模式: ...

    基于MySQL到MongoDB简易对照表的详解

    查询:MySQL:SELECT * FROM userMongo:db.user.find()MySQL:SELECT * FROM user WHERE name = ‘starlee’Mongo:db.user.find({‘name’ : ‘starlee’})插入:MySQL:INSERT INOT user (`name`, `age`) values (...

Global site tag (gtag.js) - Google Analytics