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

truy vấn mongodb để khớp từng phần tử trong mảng doc với một điều kiện

Tôi không nghĩ rằng có bất kỳ cách nào để làm điều này, ngoài việc lặp lại thủ công các tài liệu của bạn và kiểm tra từng giá trị trong mảng. Điều đó sẽ khá chậm vì nó phải thực thi JavaScript trên mỗi tài liệu và không thể tận dụng bất kỳ chỉ mục nào trên col.values .

Even a $ ở đâu Truy vấn biểu thức JavaScript dường như không hoạt động ở đây bởi vì, có thể do truy vấn chứa một lệnh gọi lại và quá phức tạp:

db.col.find("this.values.every(function(v) { return (v > 1 && v < 5) })")

Chỉnh sửa: Đối với một số truy vấn, bao gồm cả truy vấn này, JavaScript $ ở đâu biểu thức cần một câu lệnh trả về, vì vậy điều này hoạt động tốt:

db.col.find("return this.values.every(function(v) { return (v > 1 && v < 5) })")


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. thư mục cài đặt mặc định cho mongodb ở đâu

  2. Làm cách nào để xóa giá trị tối thiểu trong mongodb cho nhóm?

  3. Mongo:hiển thị dbs không hiển thị db thử nghiệm. Tại sao?

  4. Tạo cây nút bằng bảng đệ quy với Express và Mongo

  5. Điều kiện phù hợp của các thành viên trong mảng tổng hợp