$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 ] }