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

MongoDB $ pull mảng 2 cấp

Bạn không cần ký hiệu đầy đủ vì trình giữ chỗ đã di chuyển đến vị trí đó trong mảng.

db.junk.update(
    { "commandes.voyagesSouscrits.idVoyage": "123" },
    {$pull: { "commandes.$.voyagesSouscrits": { idVoyage: "123" } }}
)

Phần này:

idVoyage: { <query> }

chỉ cần thiết vì toán tử vị trí trong " commandes. $. voyagesSouscrits "chỉ có thể khớp với đầu tiên vị trí mảng được tìm thấy trong truy vấn.

http://docs.mongodb.org/manual/reference/operator/projection/positional/

Hy vọng điều đó sẽ sáng tỏ.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. db.collection không phải là một hàm khi sử dụng MongoClient v3.0

  2. 2 cách để giới hạn tài liệu được trả lại trong MongoDB

  3. Spring Data Mongo - áp dụng các trường kết hợp duy nhất trong tài liệu nhúng

  4. Cách sử dụng mongoimport để nhập csv

  5. Điều kiện truy vấn MongoDb khi so sánh 2 trường