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使用find或者findOne时的shell查询语法,对于掌握mongoDB是非常有用的
《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...
一、find操作 MongoDB中使用find来进行查询,通过指定find的第一个参数可以实现全部和部分查询。 1、查询全部 空的查询文档{}会匹配集合的全部内容。如果不指定查询文档,默认就是{}。 2、部分查询 3、键的筛选 键...
MongoDB 查询操作的实例详解 使用find或findOne进行查询。并可以进行范围查询、数据集查询、不等式查询,以及其他的一些查询。 查询将会返回DBcursor 游标只有在你需要的时候返回文档 针对游标返回的文档(结果集...
《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...
MongoDB 中Limit与Skip的使用方法详解 一 MongoDB Limit() 方法 如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。...
MongoDB 游标详解 MongoDB中的游标与关系型数据库中的游标在功能上大同小异。游标相当于C语言的指针,可以定位到某条记录,在MongoDB中,则是文档。因此在mongoDB中游标也有定义,声明, 打开,读取,关闭这么个过程...
MongoDB查询之高级操作 语法介绍 MongoDB查询文档使用find()方法,同时find()方法以非结构化的方式来显示所有查询到的文档。 -- 1.基本语法 db.collection.find(query, projection) -- 返回所有符合查询条件的文档 ...
例如:mysql安装配置好后,有一个自带的mysql数据库,里面有一张user表,用来存放用户,以及用户权限,而mongodb这个最像关系型的数据库,有没有这样的表呢。 一,掌握权限,理解下面4条基本上就差不多 1,mongodb是...
MongoDB集群重构,释放磁盘空间 由于mongodb删除了一部分数据后,不会回收相应的磁盘空间,所以这里通过重建数据目录的方式释放磁盘空间。 一 实验环境 配置了一个副本集,该副本集由以下三个节点组成...db.c.find()
在实际开发中, 有不少的场景需要使用到模糊查询, MongoDB shell 模糊查询很简单: db.collection.find({'_id': /^5101/}) 上面这句就是查询_id以’5101’开始的内容。 在老的MogoDB中模糊查询挺简单的,这里简单...
explain方法是用来查看db.collecion.find()的一些查询信息的。例如: db.collectionName.find().explain() explain方法有个可选的参数verbose,是个字符串,他表示的是verbose的模式。一共分为3种模式: ...
查询: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 (...