如何进行MongoDB查询文档

技术如何进行MongoDB查询文档如何进行MongoDB查询文档,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。查询文件使用inventory集合。插入inv

关于MongoDB如何查询文档,相信很多没有经验的人都不会做。因此,本文总结了问题产生的原因及解决方法。希望你能通过这篇文章解决这个问题。

查询文件

使用库存集。要插入清单集合的内容,请运行以下命令:

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: '明信片',qty:45,size:{h:10,w:15.25,uom:'cm'},status: ' A ' }

]);00-1010要选择集合中的所有文档,请将空文档作为查询筛选参数传递给查找方法。查询过滤器参数决定选择标准:

Db.inventory.find({})此操作相当于以下SQL语句:

有关方法语法的更多信息,请参见查找()。

指定相等条件。

若要指定相等条件,请使用查询筛选器文档中的表达式field:value:

{field1: value1,}以下示例从库存集合中选择所有状态为的文档“d ”:

此操作对应于以下SQL语句:

从库存中选择*状态=“D”

选择集合中的所有文档

查询过滤文档可以使用查询运算符以下列形式指定条件:

{field1: {operator1: value1},}以下示例从库存集合中检索所有文档,其中状态等于“a”或“d”:

db . inventory . find({ status : { $in :[' a ',' d ']})

使用查询运算符指定条件

虽然您可以在查询中使用$or运算符,但在对同一字段执行相等性检查时,请使用$ in运算符而不是$or运算符。

此操作对应于以下SQL语句:

从“a”、“d”中的fromventorywherestationsin中选择*。有关MongoDB查询运算符的完整列表,请参见查询和投影运算符文档。

00-1010复合查询可以为一组文档中的多个字段指定条件。隐式地,逻辑AND连接将连接复合查询的子句,以便查询选择集中匹配所有条件的文档。

以下示例检索库存集合中状态序列为“A”且数量小于($lt)30的所有文档:

此操作对应于以下SQL语句:

选择* fromventorywherestatus="a "和qty30。参见其他MongoDB的比较操作。

00-1010使用$OR运算符,您可以指定一个复合查询,该查询使用逻辑OR连接来连接每个子句,以便查询选择集中至少符合一个条件的文档。

以下示例检索集合中状态等于“a”或数量小于($lt)30的所有文档:

此操作对应于以下SQL语句:

对于其他MongoDB比较运算符,请选择* fromventorywherestatus="a "或qty30

注意

,请参见比较运算符。

指定AND条件

在以下示例中,对集合执行复合查询,以获取满足以下条件的文档:状态等于“a”且数量小于($lt)30或项目值以p开头的文档:

db . inventory . find({ 0

状态:'A ',

$or:[{qty:{$lt:30}},{item:/^p/}]

})此操作对应于以下SQL语句:

选择* Frominventorywherestatus="a "和(qty 30 oritemlike " p % ")

指定OR条件

MongoDB支持正则表达式$regex查询来执行字符串模式匹配。

看完以上,你知道MongoDB怎么查询文档吗?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道。感谢阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/67451.html

(0)

相关推荐

  • 服务器香港:香港云服务器会影响您的 SEO 吗

    技术服务器香港:香港云服务器会影响您的 SEO 吗谈到SEO,细节很重要。通常被忽视的细节之一是您选择的服务器是否可靠。通常很多站长会花很多时间在网站内部的和外链的优化,但是却往往忽视了服务器的性能和稳定性会对您的排名产

    礼包 2021年10月19日
  • leetcode反转链表怎么用(leetcode链表怎么分割)

    技术LeetCode如何实现部分链表反转这篇文章将为大家详细讲解有关LeetCode如何实现部分链表反转,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。部分链表反转。1)链表为空或者一个

    攻略 2021年12月15日
  • css样式的继承性、层叠性 、优先级有什么作用

    技术css样式的继承性、层叠性 、优先级有什么作用这篇文章主要讲解了“css样式的继承性、层叠性 、优先级有什么作用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css样

    攻略 2021年12月10日
  • MySQL中MERGE表的优缺点有哪些

    技术MySQL中MERGE表的优缺点有哪些这篇文章将为大家详细讲解有关MySQL中MERGE表的优缺点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MERGE表的优点:1.简单管

    攻略 2021年11月1日
  • Java世界常用的工具类库有哪些

    技术Java世界常用的工具类库有哪些小编给大家分享一下Java世界常用的工具类库有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Apach

    攻略 2021年12月9日
  • 如何掌握Quartz.net分布式定时任务的姿势

    技术如何掌握Quartz.net分布式定时任务的姿势这篇文章给大家介绍如何掌握Quartz.net分布式定时任务的姿势,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。引言长话短说,今天聊一聊分布式定时

    攻略 2021年11月18日