为MongoDB中的数据指定返回格式
借助MongoDB中的$addToSet来指定返回格式。让我们创建一个包含文档的集合-
> db.demo207.insertOne({"FavouriteTechnology":"Spring Boot"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3d8e7a03d395bdc21346f1")
}
> db.demo207.insertOne({"FavouriteTechnology":"MongoDB"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3d8e8f03d395bdc21346f2")
}
> db.demo207.insertOne({"FavouriteTechnology":"Groovy"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3d8ea603d395bdc21346f3")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo207.find();
这将产生以下输出-
{ "_id" : ObjectId("5e3d8e7a03d395bdc21346f1"), "FavouriteTechnology" : "Spring Boot" }
{ "_id" : ObjectId("5e3d8e8f03d395bdc21346f2"), "FavouriteTechnology" : "MongoDB" }
{ "_id" : ObjectId("5e3d8ea603d395bdc21346f3"), "FavouriteTechnology" : "Groovy" }以下是指定返回格式的查询-
> db.demo207.aggregate([
... {
... "$group": {
... "_id": 0,
... "FavouriteTechnology": {
... "$addToSet": "$FavouriteTechnology"
... }
... }
... },
... {
... "$project": {
... "_id": 0,
... "FavouriteTechnology": 1
... }
... }
...]);这将产生以下输出-
{ "FavouriteTechnology" : [ "MongoDB", "Groovy", "Spring Boot" ] }