位置: 编程技术 - 正文

MongoDB数据查询方法干货篇(mongodb查询表数据)

编辑:rootadmin

推荐整理分享MongoDB数据查询方法干货篇(mongodb查询表数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongodb查询数据库列表,mongodb怎么查数据,mongodb怎么查数据,mongodb数据库查询,mongodb数据库查询,mongodb查询语句大全,mongodb如何查询数据,mongodb查询数据库列表,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要给大家介绍了MongoDB数据查询的相关内容,对大家具有一定的参考价值,需要的朋友们一起来学习学习吧。

导入测试数据

在开始之前我们应该先准备数据方便演示,这里我插入的了几条数据,数据如下:

find()

其中query表示查找的条件,相当于mysql中where子句,projection列出你想要查找的数据,格式为db.collection.find(find(<query filter>, <projection>))

实例:

下面不带参数的查找,将会查找出所有的结果

下面找出满足name为jack的数据,并且只输出name,age,这里的_id是默认输出的,如果不想输出将将它设置为0,想要输出那个字段将它设置为1

**注意:这里的一个 projection不能 同时 指定包括和排除字段,除了排除 _id字段。 在 显式包括 字段的映射中,_id 字段是唯一一个您可以 显式排除 的。

查询内嵌文档

上述例子中插入的school数据就表示内嵌文档

完全匹配查询

完全匹配查询表示school中的查询数组必须和插入的数组完全一样,顺序都必须一样才能查找出来

键值对查询

可以通过键值对查询,不用考虑顺序,比如 'school.name':'shida' ,表示查询学校名字为shida的数据,这里的引号是必须要的

查询操作符

下面我们将配合查询操作符来执行复杂的查询操作,比如元素查询、 逻辑查询 、比较查询操作。我们使用下面的比较操作符"$gt" 、"$gte"、 "$lt"、 "$lte"(分别对应">"、 ">=" 、"<" 、"<=")

实例

下面查询年龄在-之间的信息

$ne

$ne表示不相等,例如查询年龄不等于岁的信息

slice

$slice操作符控制查询返回的数组中元素的个数。此操作符根据参数{ field: value } 指定键名和键值选择出文档集合,并且该文档集合中指定array键将返回从指定数量的元素。如果count的值大于数组中元素的数量,该查询返回数组中的所有元素的。

语法:db.collection.find( { field: value }, { array: {$slice: count }});

MongoDB数据查询方法干货篇(mongodb查询表数据)

下面将查询grades中的前两个数

下面将输出后3个数据

下面介绍指定一个数组作为参数。数组参数使用[ skip , limit ] 格式,其中第一个值表示在数组中跳过的项目数,第二个值表示返回的项目数。

$exists如果$exists的值为true,选择存在该字段的文档,若值为false则选择不包含该字段的文档

下面将会查询不存在sex这一项的信息

$or

执行逻辑OR运算,指定一个至少包含两个表达式的数组,选择出至少满足数组中一条表达式的文档。

语法: { $or: [ { <expression1> }, { <expression2> }, ... , { <expressionN> } ] }

下面将要查找age等于或者age等于的值

下面将会查找出年龄为或者并且姓名为jack的人的信息

$and

指定一个至少包含两个表达式的数组,选择出满足该数组中所有表达式的文档。$and操作符使用短路操作,若第一个表达式的值为“false”,余下的表达式将不会执行。

语法: { $and: [ { <expression1> }, { <expression2> } , ... , { <expressionN> } ] }

下面将会查找年龄在-之间的信息,对于下面使用逗号分隔符的表达式列表,MongoDB会提供一个隐式的$and操作:

$in

匹配键值等于指定数组中任意值的文档。类似sql中in,只要匹配一个value就会输出

语法: { field: { $in: [<value1>, <value2>, ... <valueN> ] } }

下面将会查找grades中存在,之间的任意一个数的信息

$nin

匹配键不存在或者键值不等于指定数组的任意值的文档。类似sql中not in(SQL中字段不存在使用会有语法错误).

查询出grades中不存在或者的文档

$not

执行逻辑NOT运算,选择出不能匹配表达式的文档 ,包括没有指定键的文档。$not操作符不能独立使用,必须跟其他操作一起使用

语法: { field: { $not: { } } }

查询年龄不大于的信息

迭代游标的查询

学过高级语言的朋友都知道迭代的问题,像java,下面使用迭代的方法查询

总结

标签: mongodb查询表数据

本文链接地址:https://www.jiuchutong.com/biancheng/312635.html 转载请保留说明!

上一篇:MongoDB的索引(mongodb建立索引的命令)

下一篇:MongoDB数据更新方法干货篇(mongo 更新数据)

  • 只报税不做账有什么后果?
  • 个人补缴的医保要做账吗
  • 电汇汇票和电汇的异同点
  • 汽车年审属于什么费用
  • 人工费能不能抵扣进项税
  • 商场扣点收入如何纳税
  • 在建工程待摊支出例题
  • 付给供应商远期延期支票怎么做账?
  • 公司司机出车补贴
  • 合作保证金可以退吗
  • 资本公积与实收资本和盈余公积有什么区别?
  • 开发商按揭贷款担保责任有哪些
  • 4800的个人所得税
  • 固定资产进项票能抵扣吗
  • 财产收购的税务处理
  • 工会筹备金怎么报
  • 理财代持有法律效力吗
  • 预提职工存量怎么做会计凭证
  • 收取施工队管理费
  • 工商营业年报怎么做
  • 派发现金红利怎么知道有没有
  • 企业所得税纳税调整事项有哪些
  • 电脑bios设置最佳性能和默认
  • 怎么利用腾讯手机号找人
  • msiexec.exe是什么进程介绍
  • 什么是保守型证券
  • 怎样提高网速呢知乎
  • 财政应返还额度是什么意思?
  • iconfonf
  • PHP:mcrypt_enc_get_algorithms_name()的用法_Mcrypt函数
  • 税收滞纳金可以抵税吗
  • 违约金赔偿款怎么开票
  • 扣缴义务人的法律地位
  • 长期股权投资凭证
  • php验证码功能怎么实现
  • 马萨诸塞 下架
  • 固定资产备抵科目怎么填
  • 其他综合收益的构成项目如何
  • auto.js 教程
  • dir命令参数
  • 其他权益工具投资是金融资产吗
  • 域名费用怎么交
  • 一般纳税人销售货物税率
  • 小微企业买商品房怎么买
  • 去银行取对账单需要带什么
  • 政府补助分类有几种
  • 视同销售要不要确认收入?
  • 股权转让给个人和公司的区别
  • 销售折扣的账务处理有详细的计算过程
  • 运输公司汽车折旧能直接进主营成本吗
  • 可抵扣进项税额的六种类型
  • 土地增值税预缴计算方法70号公告
  • 为什么车船税没有发票
  • 没开发票能确认没开发票能确认收入申报纳税吗?
  • 备用金账目处理
  • 其他应付款的有
  • 垃圾处理费计提依据
  • 贷款利息天数怎么算的
  • 直接成本包括哪些
  • 资金会计应当设置的科目
  • mysql判断字符长度
  • mysql数据库崩了怎么恢复
  • windows8功能设置
  • WIN10系统打开IE浏览器断网
  • Intermediate Unity 3D for iOS: Part 1/3
  • opengl 编程
  • 用滑动门技术设计一幅画
  • 关于超链接下列说法中错误的是
  • 使用时间
  • js中正则表达式语法
  • vue购物商城
  • unity怎么删除导入的包
  • c#委托实现的步骤
  • unity大神
  • android网络访问异常提示有哪些
  • 江苏国税电子税局
  • 税务局电话咨询电话
  • 江苏国税电子国税局
  • 比利时个人所得税税率
  • 天津市税务机关代码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设