为了仅返回MongoDB中字段的值,您需要编写查询并使用forEach循环。首先让我们创建一个包含文档的集合
> db.returnOnlyValueOfFieldDemo.insertOne({"ClientName":"Larry"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ea537d628fa4220163b6e")
}
> db.returnOnlyValueOfFieldDemo.insertOne({"ClientName":"Chris"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ea53bd628fa4220163b6f")
}
> db.returnOnlyValueOfFieldDemo.insertOne({"ClientName":"Robert"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ea541d628fa4220163b70")
}
> db.returnOnlyValueOfFieldDemo.insertOne({"ClientName":"Ramit"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9ea549d628fa4220163b71")
}以下是在find()方法的帮助下显示集合中所有文档的查询
> db.returnOnlyValueOfFieldDemo.find().pretty();
这将产生以下输出
{ "_id" : ObjectId("5c9ea537d628fa4220163b6e"), "ClientName" : "Larry" }
{ "_id" : ObjectId("5c9ea53bd628fa4220163b6f"), "ClientName" : "Chris" }
{ "_id" : ObjectId("5c9ea541d628fa4220163b70"), "ClientName" : "Robert" }
{ "_id" : ObjectId("5c9ea549d628fa4220163b71"), "ClientName" : "Ramit" }以下是仅返回MongoDB中字段值的查询
> var output = []
> db.returnOnlyValueOfFieldDemo.find().forEach(function(document) {output.push(document.ClientName) })为了获取MongoDB中字段的值,您需要在Mongo shell上写输出变量名(因为我们知道该值存储在输出数组中)。以下是查询
> output
这将产生以下输出
[ "Larry", "Chris", "Robert", "Ramit" ]