MongoDB查询操作限制返回字段的方法

发布时间:2022-04-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了MongoDB查询操作限制返回字段的方法脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
映射(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查询操作限制返回字段的方法全部内容,希望文章能够帮你解决MongoDB查询操作限制返回字段的方法所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。