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

Cập nhật một trường trong MongoDB trong một tài liệu nhúng duy nhất

Bạn có thể sử dụng toán tử vị trí để xác định phần tử mảng:

Vì vậy, có lẽ một cái gì đó như:

User.collection.update(
    { :_id => user.id, :matches => BSON::ObjectId('4e40238dbc9f6ec5a6000eed') },
    { :$set => { 'alert.matches.$' => matches } }
)

Nhưng như Sergio lưu ý, rất khó để xác định cấu trúc tài liệu của bạn dựa trên thông tin hạn chế trong câu hỏi của bạn.

Có vẻ như có thêm thông tin sau khi tôi trả lời và có vẻ như:

{ :$set => { 'alerts.$.matches' => ... } }

là những gì bạn cần. Và bạn sẽ cần bao gồm :matches trong truy vấn để $ có một cái gì đó để tham khảo.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nhận dấu thời gian từ id mongodb

  2. Độ sâu tối đa của tài liệu nhúng được phép trong MongoDb là bao nhiêu?

  3. Loại bỏ các loại đa hình với MongoDB C # Driver

  4. Làm thế nào để lưu múi giờ một cách chính xác với Ruby và MongoId?

  5. MongoDB:Làm thế nào để phân tích cú pháp ngày trong phiên bản 3.6 mongoDb?