MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Memperbarui catatan bersarang di array mongodb saat Anda tidak mengetahui indeks dokumen

DEMO :Taman Bermain MongoDB

Pertama-tama, ada kesalahan di JSON Anda.

JSON

[
  {
    "_id": "60753fd9b249ad0dfa1eeb48",
    "name": "Random Name 1",
    "email": "[email protected]",
    "likings": [
      {
        "breakfast": {
          "eat": "oats",
          "drink": "milk"
        }
      },
      {
        "lunch": {
          "eat": "beef",
          "drink": "pepsi"
        }
      },
      {
        "dinner": {
          "eat": "steak",
          "drink": "champagne"
        }
      }
    ]
  },
  {
    "_id": "60753fd9b249ad0dfa1eeb58",
    "name": "Random Name 2",
    "email": "[email protected]",
    "likings": [
      {
        "breakfast": {
          "eat": "cereals",
          "drink": "coffee"
        }
      },
      {
        "lunch": {
          "eat": "salad",
          "drink": "hot-water"
        }
      },
      {
        "dinner": {
          "eat": "biryani",
          "drink": "apple juice"
        }
      }
    ]
  }
]

Coba ini:

db.collection.update({
  "name": "Random Name 2",
  "likings.dinner": {
    "$exists": true
  }
},
{
  "$set": {
    "likings.$.dinner.drink": "PEPSI"
  }
})

Anda dapat mengubah dinner ke bidang apa pun yang ingin Anda perbarui.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara menggunakan Spring Boot dengan MongoDB

  2. Bagaimana cara memasukkan jika tidak ada pembaruan lain dengan mongoengine?

  3. Menemukan catatan mongoDB dalam batch (menggunakan adaptor Ruby mongoid)

  4. MongoDB dan C# Temukan()

  5. Apakah replika mengatur frekuensi detak jantung atau periode waktu habis dapat dikonfigurasi?