Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menambah Item Baharu pada Array Bersarang dalam MongoDB menggunakan $push?

Bagaimana untuk Menambah Item Baharu pada Array Bersarang dalam MongoDB menggunakan $push?

Mary-Kate Olsen
Lepaskan: 2024-12-14 05:14:16
asal
255 orang telah melayarinya

How to Add a New Item to a Nested Array in MongoDB using $push?

MongoDB: Menambah Data pada Tatasusunan Bersarang dengan $push

Dalam MongoDB, anda boleh menyimpan struktur data yang kompleks, seperti tatasusunan bersarang. Apabila anda perlu menambah elemen baharu pada tatasusunan ini, anda boleh menggunakan operator $push.

Masalah:

Anda mahu menambah item baharu pada subarray tertentu dalam sesebuah dokumen. Dokumen anda mengandungi susunan bersarang trek muzik dalam senarai main. Anda ingin menambah lagu baharu pada senarai main sedia ada.

Contoh Dokumen:

{
  "username": "erkin",
  "email": "example@email.com",
  "password": "b",
  "playlists": [
    {
      "_id": 58,
      "name": "asdsa",
      "date": "09-01-15",
      "musics": [
        {
          "name": "INNA - Cola Song (feat. J Balvin)",
          "duration": "3.00"
        }
      ]
    }
  ]
}
Salin selepas log masuk

Keputusan yang Diingini:

{
  "username": "erkin",
  "email": "example@email.com",
  "password": "b",
  "playlists": [
    {
      "_id": 58,
      "name": "asdsa",
      "date": "09-01-15",
      "musics": [
        {
          "name": "INNA - Cola Song (feat. J Balvin)",
          "duration": "3.00"
        },
        {
          "name": "new",
          "duration": "3.00"
        }
      ]
    }
  ]
}
Salin selepas log masuk

Penyelesaian:

Untuk menambah item baharu kepada subarray musics, anda boleh menggunakan pertanyaan kemas kini berikut:

db.collection.update(
    { "_id": ID, "playlists._id": "58"},
    { "$push": 
        {"playlists.$.musics": 
            {
                "name": "test name",
                "duration": "4.00"
            }
        }
    }
)
Salin selepas log masuk

Dalam pertanyaan ini:

  • "_id": ID mengenal pasti dokumen yang ingin anda kemas kini.
  • "playlists._id": "58" menentukan senarai main tertentu dalam dokumen yang anda mahu tambahkan yang baharu item.
  • "$push" melakukan operasi kemas kini.
  • {"playlist.$.musics": ...} menolak item baharu ke dalam subbaris muzik.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Item Baharu pada Array Bersarang dalam MongoDB menggunakan $push?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan