Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

จะผนวกอาร์เรย์ใน 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" ] }