MongoDB查询综合

数据库操作

选择数据库

use <数据库名>

展示当前所在数据库

db
在选择数据库后,可以进行该数据库的相关操作,例如创建集合、插入文档等。

查询语法

查询全部文档

db.<集合名>.find()

指定条件查询

db.<集合名>.find(<查询条件>)

指定返回字段

db.<集合名>.find(<查询条件>, <返回字段>)

实例1

db.users.find({ age: 30 }, { name: 1, email: 1 })
查询名为“users”的集合中“age”字段等于30的文档,并返回其中“name”和“email”字段。其中,1表示返回该字段,0表示不返回该字段。

对查询结果进行排序

db.<集合名>.find(<查询条件>).sort(<排序条件>)
排序条件是一个JSON对象,可以指定根据哪个字段进行排序以及排序方式(升序或降序)。

实例2

db.users.find({ age: 30 }).sort({ name: 1 })
查询名为“users”的集合中“age”字段等于30的文档,并按照“name”字段进行升序排序
其中,1表示升序,-1表示降序。

分页查询

db.<集合名>.find(<查询条件>).skip(<跳过数量>).limit(<返回数量>)
skip表示跳过的文档数量,limit表示返回的文档数量。
db.users.find({ age: 30 }).skip(1).limit(4)
查询名为“users”的集合中“age”字段等于30的文档,并返回其中第2个到第5个文档
注意,skip和limit命令应该在排序命令之后执行。

查询结果计数

db.<集合名>.find(<查询条件>).count()
例如,查询名为“users”的集合中“age”字段等于30的文档的数量,可以使用以下命令:
db.users.find({ age: 30 }).count()

查询字段是否存在

db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 18: …ists: <boolean>}̲}) field 为要查询的字…exists 操作符后面的 boolean 参数表示是否存在该字段,true 表示存在,false 表示不存在
如果一个字段的值为 null 或者空字符串,也算存在该字段。如果想要查询字段不为 null 或空字符串的文档,可以使用 KaTeX parse error: Expected '}', got 'EOF' at end of input: ….find({email: {exists: true, $ne: “”}})

查询条件

查询条件是一个JSON对象,可以指定查询的字段和对应的值。

等于条件($eq):

查询指定字段等于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 10: eq: value}̲}) 示例:查询 studen…eq: 18}})

不等于条件($ne):

查询指定字段不等于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 10: ne: value}̲}) 示例:查询 studen…ne: 18}})

大于条件($gt):

查询指定字段大于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 10: gt: value}̲}) 示例:查询 studen…gt: 18}})

大于等于条件($gte):

查询指定字段大于等于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 11: gte: value}̲}) 示例:查询 studen…gte: 18}})

小于条件($lt):

查询指定字段小于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 10: lt: value}̲}) 示例:查询 studen…lt: 18}})

小于等于条件($lte):

查询指定字段小于等于指定值的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 11: lte: value}̲}) 示例:查询 studen…lte: 18}})

包含条件($in):

查询指定字段值在指定值列表中的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 26: …1, value2, ...]}̲}) 示例:查询 studen…in: [18, 20]}})

不包含条件($nin):

查询指定字段值不在指定值列表中的文档。
db.collection.find({field: {KaTeX parse error: Expected 'EOF', got '}' at position 27: …1, value2, ...]}̲}) 示例:查询 studen…nin: [18, 20]}})

====>持续更新中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jesse_Kyrie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值