$concatArrays ใช้เพื่อเชื่อมอาร์เรย์เพื่อส่งคืนอาร์เรย์ที่ต่อกัน
ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo338.insertOne({"Name":"Chris","Marks1":[ [56,67,45],[67,89,90,91]]}); { "acknowledged" : true, "insertedId" : ObjectId("5e5299baf8647eb59e56209f") }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo338.find().pretty();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e5299baf8647eb59e56209f"), "Name" : "Chris", "Marks1" : [ [ 56, 67, 45 ], [ 67, 89, 90, 91 ] ] }
ต่อไปนี้เป็นแบบสอบถามในการทำงานกับเขตข้อมูลหลายอาร์เรย์ที่มีอยู่และอาร์เรย์ที่เชื่อมต่อกัน -
> db.demo338.aggregate([ ... { "$project": { ... "Marks": { ... "$reduce": { ... "input": "$Marks1", ... "initialValue": [], ... "in": { "$concatArrays": ["$$this", "$$value"] } ... } ... } ... }} ... ])
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ &ลบ'
{ "_id" : ObjectId("5e5299baf8647eb59e56209f"), "Marks" : [ 67, 89, 90, 91, 56, 67, 45 ] }