如何在 MongoDB 中追加陣列?


若要在 MongoDB 中追加陣列,請使用 $concatArrays。我們建立一個帶有文件的集合 -

> db.demo435.insertOne({"FirstName":["Chris"],"LastName":["Brown"]} );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e7719b1bbc41e36cc3cae97")
}
> db.demo435.insertOne({"FirstName":["David"],"LastName":["Miller"]} );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e7719bdbbc41e36cc3cae98")
}
> db.demo435.insertOne({"FirstName":["John"],"LastName":["Doe"]} );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e7719c6bbc41e36cc3cae99")
}

使用 find() 方法顯示集合中的所有文件 -

> db.demo435.find().pretty();

這將產生以下輸出 -

{
   "_id" : ObjectId("5e7719b1bbc41e36cc3cae97"),
   "FirstName" : [
      "Chris"
      ],
      "LastName" : [
         "Brown"
      ]
   }
   {
      "_id" : ObjectId("5e7719bdbbc41e36cc3cae98"),
      "FirstName" : [
         "David"
      ],
      "LastName" : [
         "Miller"
      ]
   }
   {
      "_id" : ObjectId("5e7719c6bbc41e36cc3cae99"),
      "FirstName" : [
         "John"
      ],
      "LastName" : [
         "Doe"
   ]
}

以下是在 MongoDB 中追加陣列的查詢 -

> db.demo435.aggregate([ { $project: { FullName: { $concatArrays: [ "$FirstName", "$LastName" ] } } } ])

這將產生以下輸出 -

{ "_id" : ObjectId("5e7719b1bbc41e36cc3cae97"), "FullName" : [ "Chris", "Brown" ] }
{ "_id" : ObjectId("5e7719bdbbc41e36cc3cae98"), "FullName" : [ "David", "Miller" ] }
{ "_id" : ObjectId("5e7719c6bbc41e36cc3cae99"), "FullName" : [ "John", "Doe" ] }

更新於: 03-4-2020

282 瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.