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

สร้าง Double Nested Array ใน MongoDB

โครงสร้างอาร์เรย์ซ้อนอาร์เรย์

MongoDB รองรับการเก็บอาร์เรย์ภายในอาร์เรย์ (Nested Array) ได้ไม่จำกัดระดับ

ตัวอย่าง: ข้อมูลนักเรียน โปรเจกต์ เทคโนโลยี

สร้างคอลเลกชัน doubleNestedArrayDemo:

> db.doubleNestedArrayDemo.insertOne({
    "StudentId": "1000",
    "StudentName": "Larry",
    "StudentDetails": [
        {
            "ProjectName": "Online Banking",
            "ProjectDetails": [
                {"TechnologyUsed": "Java"},
                {"TechnologyUsed": "MySQL in Backend"}
            ]
        }
    ]
});

> db.doubleNestedArrayDemo.insertOne({
    "StudentId": "1001",
    "StudentName": "Robert",
    "StudentDetails": [
        {
            "ProjectName": "Student Web Tracker",
            "ProjectDetails": [
                {"TechnologyUsed": "Django Framework"},
                {"TechnologyUsed": "MongoDB in Backend"}
            ]
        }
    ]
});

แสดงข้อมูล

> db.doubleNestedArrayDemo.find().pretty()

ผลลัพธ์:

{
    "_id" : ObjectId("..."),
    "StudentId" : "1000",
    "StudentName" : "Larry",
    "StudentDetails" : [
        {
            "ProjectName" : "Online Banking",
            "ProjectDetails" : [
                {"TechnologyUsed" : "Java"},
                {"TechnologyUsed" : "MySQL in Backend"}
            ]
        }
    ]
}
{
    "_id" : ObjectId("..."),
    "StudentId" : "1001",
    "StudentName" : "Robert",
    "StudentDetails" : [
        {
            "ProjectName" : "Student Web Tracker",
            "ProjectDetails" : [
                {"TechnologyUsed" : "Django Framework"},
                {"TechnologyUsed" : "MongoDB in Backend"}
            ]
        }
    ]
}

โครงสร้างนี้เหมาะกับข้อมูล階層เช่น: ใบสั่งซื้อ -> รายการสินค้า -> ตัวเลือกสินค้า