MongoDB学习记录(三) - MongoDB的"增查改删"操做之"查"

查找使用的方法: db.collection.find()mongodb

查找全部文档

db.collection.find({})或者db.collection.find({})数组

指定键值对

db.collection.find({field: value}, ...),此方法会找到全部包含了指定的field: value对的文档(若是field字段下的值是一个数组,而且value在这个数组中,那么也将被查找出来,换句话说,value除了直接形容这个字段的值,若字段值是一个数组的话,也能够去匹配数组里的值)code

使用查询运算符

例如db.collection.find( { status: { $in: [ "A", "D" ] } } )能够找到status字段值为"A"或"D"的文档。更多查询运算符文档

"与"查询

"与"查询能够查询同时知足多个条件的文档。直接将"与"查询的查询条件写在同一个查询过滤器文档中便可隐式地调用$and进行查询。例如: db.collection.find({status: "A", qty: {$lt: 30}})查询status为"A"而且qty小于30的文档get

"或"查询

"或"查询能够查询知足多个条件之一的文档。使用$or查询运算符,将查询的条件写在一个数组中,例如: db.collection.find({$or: [ {status: "A"}, {qty: {$lt: 30}} ]})将会查询status为"A"或者qty小于30的文档qt

还能够将"与"查询和"或"查询结合起来,例如:db.collection.find( { status: "A", $or: [ { qty: { $lt: 30} }, { item: /^p/ } ] } )将查询status为"A"同时qty小于30或item以"p"开头的文档。it

利用查询运算符还能够进行更多复杂的查询操做。io


查询嵌套文档

若是想查询嵌套的文档,能够使用点符号,例如: db.collection.find({ "size.uom": "in" })将查询size字段下的uom字段值为"in"的文档。方法

查询一个数组

db.collection.find({ tags: [ "red", "blank" ] })将查找一个字段tags的值为数组["red", "blank"]的文档查询

若是使用查询运算符,还能够有更多的查询方式,例如db.collection.find({ tags: {$all: ["red", "blank"] } })将查找field字段的值为一个数组,且此数组包含"red"和"blank"的文档。

相关文章
相关标签/搜索