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

MongoDB:Đang cập nhật subocument

Bạn cần sử dụng toán tử $ positional

Ví dụ:

update({ 
       _id: 7, 
       "comments._id": ObjectId("4da4e7d1590295d4eb81c0c7")
   },{
       $set: {"comments.$.type": abc}
   }, false, true
);

Tôi đã không kiểm tra nó nhưng tôi hy vọng rằng nó sẽ hữu ích cho bạn.

Nếu bạn muốn thay đổi cấu trúc của tài liệu bạn cần sử dụng

db.collection.update (tiêu chí, objNew, upert, multi)

Lập luận:

Các tiêu chí
criteria - query which selects the record to update;
objNew - updated object or $ operators (e.g., $inc) which manipulate the object
upsert - if this should be an "upsert"; that is, if the record does not exist, nsert it
multi - if all documents matching criteria should be updated

và chèn thêm objNew mới với cấu trúc mới. kiểm tra điều này để biết thêm chi tiết



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lưu trữ tệp trong MongoDB với GridFS

  2. Lỗi nghiêm trọng:Không tìm thấy lớp 'MongoDB \ Driver \ Manager'

  3. Sự khác biệt giữa cơ sở dữ liệu dựa trên Tài liệu và Khoá / Giá trị?

  4. MongoDB, Mongoose:Làm cách nào để tìm tài liệu phụ trong tài liệu đã tìm thấy?

  5. Lombok - java.lang.StackOverflowError:null trên phương thức toString