使用MongoDB查询,有时候结果只需要返回指定的字段
用法:
db.collection.find(query, projection)
参数:
参数 | 描述 |
query | 是可选参数,基于查询操作符指定了查询的条件,若希望返回collection中的所有文件,则无需指定该query 参数,直接 db.collection.find()即可。 |
projection | 是可选参数,指定了那些字段是需要返回的,若要返回所有字段则不必要指定该参数。参数的形式如下:{ field1:boolean , field2: boolean ... } |
例如文档中有name,age字段,只需要返回name字段
db.collectionName.find({},{name:1,age:0})
- 1 或者 true 代表包含该field。find()方法总是包括_id字段,即便这里没有指定要_id字段。
- 0或者false 代表不不包含该field。
在SpringBoot+MongoDB 中代码为:
Query query = new Query();
query.fields().include("name");//包含该字段
query.fields().exclude("_id");//不包含该字段
mongoTemplate.find(query,entityClass,collectionName);