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

Object.keys, cách lấy danh sách các khóa trong mongodb

Một truy vấn như {"colors.*.prestock" : {$gte:30}} không thể theo SERVER-267 và tôi nghi ngờ điều này sẽ được hỗ trợ trong những năm tới.

Đặt cược tốt nhất của bạn là thay đổi lược đồ thành một mảng:

colors: [
 { "color" : "Green", "instock" : 50, ... },
 { "color" : "Yellow", "instock" : 50, ... },
]

Sau đó, bạn có thể truy vấn

db.foo.find( {"colors.prestock" : {$gte:30}} )

Lưu ý rằng điều này sẽ trả về toàn bộ đối tượng, bao gồm tất cả các màu, tức là cả những màu mà ràng buộc truy vấn không giữ. Điều này có thể được giải quyết bằng cách sử dụng khung tổng hợp, nhưng một lần nữa, chỉ sử dụng $unwind cũng yêu cầu colors trở thành một mảng.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cập nhật tài liệu con MongoDB khi tài liệu mẹ có thể không tồn tại

  2. MongoDB $ Slice (phân trang mảng được nhúng)

  3. Tại sao PyMongo ném AutoReconnect?

  4. Trả về các trường nhất định có .populate () từ Mongoose

  5. Cải thiện cấu trúc tổng hợp MongoDB