MongoDB查询操作限制返回字段的方法(mongodb查询语句大全)一篇读懂

随心笔谈2年前发布 编辑
166 0
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买


映射(projection )声明用来限制所有查询匹配文档的返回字段。projection以文档的形式列举结果集中要包含或者排除的字段。可以指定要包含的字段(例如:{field:1})或者指定要排除的字段(例如:{field:0})。默认_id是包含在结果集合中的,要从结果集中排除_id字段,需要在projection中指定排除_id字段({_id:0})。除了_id字段,不能在一个projection中联合使用包含和排除语意。

返回匹配文档的所有字段:

如果没有指定projection,find()方法返回所有匹配文档的所有字段。

复制代码 代码如下:
db.inventory.find( { type: ‘food’ } )

这个例子将返回inventory集合中type字段的值为”food”的所有文档,返回的文档包含全部字段。

返回指定字段和_id字段:

一个projection可以明确地指定多个字段。下面的操作中,find()方法返回匹配的所有文档。在结果集中,只有item和qty字段,默认_id字段也是返回的。

复制代码 代码如下:
db.inventory.find( { type: ‘food’ }, { item: 1, qty: 1 } )

仅返回指定字段:

可以通过在projection中指定排除_id字段将其从结果中去掉,如下例子所示:

复制代码 代码如下:
db.inventory.find( { type: ‘food’ }, { item: 1, qty: 1, _id:0 } )

返回除排除掉以外的字段:

可以使用一个projection排除一个或者一组字段,如下:

复制代码 代码如下:
db.inventory.find( { type: ‘food’ }, { type:0 } )

这个操作返回所有type字段值为food的文档,在结果中type字段不返回。

数组字段的projection: $elemMatch 和 $slice运算符是对数组进行projection的唯一途径。

您可能感兴趣的文章:MongoDB中多表关联查询($lookup)的深入讲解Mongodb实现的关联表查询功能【population方法】MongoDB各种查询操作详解PHP中MongoDB数据库的连接、添加、修改、查询、删除等操作实例MongoDB下根据数组大小进行查询的方法MongoDB导出查询结果到文件例子MongoDB如何对数组中的元素进行查询详解MongoDB查询技巧总结MongoDB查询性能优化验证及验证mongodb实现同库联表查询方法示例MongoDB的基础查询和索引操作方法总结MongoDB多表关联查询操作实例详解

© 版权声明

相关文章