美文网首页
7 MongoDB查询文档

7 MongoDB查询文档

作者: 月影追猎者 | 来源:发表于2020-07-25 13:47 被阅读0次
db.collection.find(query, projection)

query,可选项,使用查询操作符指定查询条件
projection,可选项,使用投影操作符指定返回键值,若查询时返回文档中所有键值,则省略该参数

db.collection.find().pretty()

pretty()方法,格式化显示文档

db.collection.findOne()

仅返回第1个匹配文档

> db.col.find()
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba08b3cb574c7da6ad4bb"), "username" : "admin", "password" : "bar" }
> db.col.find({"username": "foo"})
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }
> db.col.findOne({"username": "foo"})
{
        "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"),
        "username" : "foo",
        "password" : "bar"
}
> db.col.find({"username": "admin"}).pretty()
{
        "_id" : ObjectId("5f1ba08b3cb574c7da6ad4bb"),
        "username" : "admin",
        "password" : "bar"
}
> db.col.find({"username": "foo"}, {"_id": 0})
{ "username" : "foo", "password" : "bar" }
{ "username" : "foo", "password" : "bar" }
> db.col.find({"username": "foo"}, {"username": 1}) // _id默认返回
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo" }
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4ba"), "username" : "foo" }

条件操作符

{ <key>: <value> } // 等于
{ <key>: { $lt: <value> } } // 小于
{ <key>: { $lte: <value> } } // 小于或等于
{ <key>: { $gt: <value> } } // 大于
{ <key>: { $gte: <value> } } // 大于或等于
{ <key>: { $ne: <value> } } // 不等于

AND条件

db.collection.find({ key1: value1, key2: value2 })
> db.col.find({"username": "foo", "password": "bar"})
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }

OR条件

db.collection.find({ $or: [{ key1: value1 }, { key2: value2 }] })
> db.col.find({$or:[{"username": "foo"}, {"password": "bar"}]})
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba08b3cb574c7da6ad4bb"), "username" : "admin", "password" : "bar" }

$type操作符
基于BSON类型检索集合中匹配的数据类型,并返回结果
MongoDB支持类型有:double(1)、string(2)、object(3)、array(4)、binData(5)、objectId(7)、bool(8)、date(9)、null(10)、regex(11)、javascript(13)、symbol(14)、javascriptWithScope(15)、int(16, 32-bit integer)、timestamp(17)、long(18, 64-bit integer)、decimal(19, Decimal128, new in version 3.4)、minKey(-1)、maxKey(127)

> db.col.find({"username": {$type: "string"}})
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba08b3cb574c7da6ad4bb"), "username" : "admin", "password" : "bar" }
> db.col.find({"username": {$type: 2}})
{ "_id" : ObjectId("5f1b9c103cb574c7da6ad4b9"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba0813cb574c7da6ad4ba"), "username" : "foo", "password" : "bar" }
{ "_id" : ObjectId("5f1ba08b3cb574c7da6ad4bb"), "username" : "admin", "password" : "bar" }

limit()方法

db.collection.find().limit(number)

读取指定数量的文档

> db.col.find()
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6ccf"), "num" : 1, "name" : "Alpha" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd3"), "num" : 5, "name" : "Echo" }
> db.col.find().limit(2)
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6ccf"), "num" : 1, "name" : "Alpha" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }

skip()方法

db.collection.find().skip(number)

跳过指定数量的文档

> db.col.find()
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6ccf"), "num" : 1, "name" : "Alpha" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd3"), "num" : 5, "name" : "Echo" }
> db.col.find().skip(2)
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd3"), "num" : 5, "name" : "Echo" }
> db.col.find().limit(3).skip(1)
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
> db.col.find().skip(1).limit(3)
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }

sort()方法
对数据进行排序

db.collection.find().sort({ key: number })

key指定排序字段,number指定排序方式,1为升序,-1为降序

> db.col.find().sort({"num": -1})
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd3"), "num" : 5, "name" : "Echo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6ccf"), "num" : 1, "name" : "Alpha" }
> db.col.find().sort({"num": -1}).skip(1).limit(3)
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd2"), "num" : 4, "name" : "Delta" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd1"), "num" : 3, "name" : "Charlie" }
{ "_id" : ObjectId("5f1bc98fed3b7aae0bdc6cd0"), "num" : 2, "name" : "Bravo" }

相关文章

  • 7 MongoDB查询文档

    query,可选项,使用查询操作符指定查询条件projection,可选项,使用投影操作符指定返回键值,若查询时返...

  • spring date mongo mongotemplate使

    Spring数据MongoDB三:基本文档查询(查询,基本查询)(一) MongoDB高级查询[聚合] sprin...

  • mongo二2018-06-29

    MongoDB基础语法——查询数据 基本查询 find([{文档条件}]):全集合查询 findOne([{文档条...

  • MongoDB - 文档查询

    1.基本查询 查询集合中所有文档 使用游标遍历集合 2.条件查询 2.1 条件查询支持按照指定的字段值精准匹配 2...

  • MongoDB 查询文档

    语法MongoDB 查询数据的语法格式如下: 该语句是查询collection中全部数据,效果和关系型数据库的语句...

  • MongoDB查询文档

    MongoDB 查询文档使用 find() 方法。find() 方法以非结构化的方式来显示所有文档。 db.col...

  • MongoDB查询文档

    1.查询所有文档 语法:db.集合名字.find() 2.根据条件查找匹配的文档 语法:db.集合名字.find(...

  • MongoDB实现地理位置查询

    Mongodb地理位置查询文档MongoDB支持地理位置索引,可以直接用于位置距离计算和查询。查询结果默认将会由近...

  • PHP MongoDB 查询文档 --- 2022-04-02

    本章介绍PHP MongoDB文档查询的用法。 前置教程 MongoDB教程[https://www.tizi36...

  • MongoDB 文档查询 I

    文档查询 语法: pretty() 方法可将结果格式化为可读模式 query 条件 字段比较 AND 条件 格式:...

网友评论

      本文标题:7 MongoDB查询文档

      本文链接:https://www.haomeiwen.com/subject/qesplktx.html