在 MongoDB 中指定返回格式,以将值作为数组返回?


为此使用 聚合,并使用 $group 和 $addToSet 运算符将值添加到数组中

让我们首先使用文档创建一个集合 -

> dbspecifyReturnFormatDemoinsertOne({"Subject":"MongoDB"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd364ef71edecf6a1f6c0")
}
> dbspecifyReturnFormatDemoinsertOne({"Subject":"MySQL"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd369ef71edecf6a1f6c1")
}
> dbspecifyReturnFormatDemoinsertOne({"Subject":"SQL Server"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cefd36fef71edecf6a1f6c2")
}

以下是使用 find() 方法从集合中显示所有文档的查询 -

> dbspecifyReturnFormatDemofind();

输出

{ "_id" : ObjectId("5cefd364ef71edecf6a1f6c0"), "Subject" : "MongoDB" }
{ "_id" : ObjectId("5cefd369ef71edecf6a1f6c1"), "Subject" : "MySQL" }
{ "_id" : ObjectId("5cefd36fef71edecf6a1f6c2"), "Subject" : "SQL Server" }

以下是指定返回格式的查询 -

> dbspecifyReturnFormatDemoaggregate([
   {
      "$group": {
         "_id": 0,
         "Subject": {
            "$addToSet": "$Subject"
         }
      }
   },
   {
      "$project": {
         "_id": 0,
         "Subject": 1
      }
   }
]);

输出

{ "Subject" : [ "SQL Server", "MySQL", "MongoDB" ] }

更新于: 2019 年 7 月 30 日

172 个浏览量

开启你的职业生涯

完成课程获得认证

开始
广告