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

Truy vấn Spring Data MongoDB AND / OR với nhiều tham số tùy chọn

Nếu bạn cố gắng định dạng thủ công cẩn thận mà bạn truy vấn để dễ đọc hơn, bạn sẽ lưu ý rằng bạn đã mắc một vài lỗi với dấu ngoặc đóng.

Hãy thử truy vấn này thay thế:

{ $and : 
    [{
       $and: 
        [
         {$or : [ { $where: '?0 == null' } , { a : ?0 }]}, 
         {$or : [ { $where: '?1 == null' } , { b : ?1 }]},
         {$or : [ { $where: '?2 == null' } , { c : ?2 }]}
        ]
    }]
}

Lưu ý phụ:Tôi nghĩ một $and là đủ, tức là xóa $and cấp cao nhất nhà điều hành.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongoose unshift findAndUpdateById

  2. Đã xảy ra thời gian chờ sau 30000 mili giây chọn máy chủ bằng CompositeServerSelector

  3. MongoDB - $ text operator tìm kiếm cho cụm từ HOẶC (các) từ

  4. Lưu trữ và truy vấn JSON từ cơ sở dữ liệu

  5. MongoDB:Hàng tỷ tài liệu trong một bộ sưu tập