MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Cập nhật các đối tượng mảng lồng nhau dựa trên một thuộc tính trong MongoDB

Bạn cần sử dụng $ positional toán tử để cập nhật một phần tử mảng và với multi: true tùy chọn bạn có thể cập nhật nhiều tài liệu với cùng một kết quả phù hợp

db.collection.update(
  { 'items': { '$elemMatch': { 'itemName': 'Name 1' }}},
  { '$set': { 'items.$.itemName': 'New Name' }},
  { 'multi': true }
)

và với mongodb 3.6 arrayFilters

db.collection.update(
  { 'items': { '$elemMatch': { 'itemName': 'Name 1' }}},
  { '$set': { 'items.$[item].itemName': 'New Name' }},
  { 'arrayFilter': [{ 'item.itemName': 'Name 1' }], 'multi': true }
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Truy vấn để nhận dữ liệu X phút cuối cùng với Mongodb

  2. Tích hợp ClusterControl với SNMP - Bằng chứng về khái niệm:Phần thứ nhất

  3. MongoDB findOneAndDelete ()

  4. $ push và $ set trong cùng một bản cập nhật MongoDB

  5. Cách cài đặt MongoDB