• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MongoDB的常用Query操作的介绍(附代码)

mysql 搞代码 4年前 (2022-01-09) 32次浏览 已收录 0个评论

本篇文章给大家带来的内容是关于MongoDB的常用Query操作的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

前言:使用的可视化工具是 Studio 3T,官网–>https://studio3t.com/
版本号:MongoDB shell version v3.4.2
如何使用:https://blog.gaodaima.com/weixin_…
看点:重点看操作符那块。
如何查找:在此页面按 ctrl+F 输入关键字查找

一、常用Query
为方便操作,在插入原数据前,先删除所有文档(在项目中请谨慎操作!):

db.getCollection("inventory").deleteMany({})

0、查看所有文档

db.getCollection("inventory").find({})

1、对象查找
1.1、原数据

db.inventory.insertMany( [   { item: "journal", qty: 25, size: { h: 14, w: 21, uom: "cm" }, status: "A" },   { item: "notebook", qty: 50, size: { h: 8.5, w: 11, uom: "in" }, status: "A" },   { item: "paper", qty: 100, size: { h: 8.5, w: 11, uom: "in" }, status: "D" },   { item: "planner", qty: 75, size: { h: 22.85, w: 30, uom: "cm" }, status: "D" },   { item: "postcard", qty: 45, size: { h: 10, w: 15.25, uom: "cm" }, status: "A" }]);

1.2、查找 size.h 等于 14,size.w 等于 21,size.uom 等于 cm 的文档

db.inventory.find( { size: { h: 14, w: 21, uom: "cm" } } )

1.3、查找 size.uom 等于 in 的文档

db.inventory.find( { "size.uom": "in" } )

注意:当查找单个对象属性时,务必加上引号!

1.4、查找并返回对象里的指定字段

db.inventory.find(   { status: "A" },   { item: 1, status: 1, "size.u<p>本文来源gao!daima.com搞$代!码#网#</p>om": 1 })

1.5、查找并过滤对象里的指定字段

db.inventory.find(   { status: "A" },   { "size.uom": 0 })

2、数组查找
2.1、原数据

db.inventory.insertMany([   { item: "journal", qty: 25, tags: ["blank", "red"], dim_cm: [ 14, 21 ] },   { item: "notebook", qty: 50, tags: ["red", "blank"], dim_cm: [ 14, 21 ] },   { item: "paper", qty: 100, tags: ["red", "blank", "plain"], dim_cm: [ 14, 21 ] },   { item: "planner", qty: 75, tags: ["blank", "red"], dim_cm: [ 22.85, 30 ] },   { item: "postcard", qty: 45, tags: ["blue"], dim_cm: [ 10, 15.25 ] }]);

2.2、查找 tags=["red", "blank"] 的文档

db.inventory.find( { tags: ["red", "blank"] } )

注意:不是包含关系,即 tags: ["red", "blank", "plain"] 是不包括在内的

2.3、查找 tags 包含 red 的文档

db.inventory.find( { tags: "red" } )

注意:不能这么写 db.inventory.find( { tags: ["red"] } ),这样就表示查找 tags 是 red 的文档

3、数组中包含对象的查找
3.1、原数据

db.inventory.insertMany( [   { item: "journal", instock: [ { warehouse: "A", qty: 5 }, { warehouse: "C", qty: 15 } ] },   { item: "notebook", instock: [ { warehouse: "C", qty: 5 } ] },   { item: "paper", instock: [ { warehouse: "A", qty: 60 }, { warehouse: "B", qty: 15 } ] },   { item: "planner", instock: [ { warehouse: "A", qty: 40 }, { warehouse: "B", qty: 5 } ] },   { item: "postcard", instock: [ { warehouse: "B", qty: 15 }, { warehouse: "C", qty: 35 } ] }]);

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MongoDB的常用Query操作的介绍(附代码)

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址