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

Chỉ định nhiều tiêu chí trong truy vấn db mùa xuân mongo

Bạn có thể cấu trúc lại mã của mình để tạo $or biểu thức. Không có $and rõ ràng cần toán tử.

Một cái gì đó giống như

 Query orQuery = new Query();
 Criteria orCriteria = new Criteria();
 List<Criteria> orExpression =  new ArrayList<>();
 for (Map<String, Object> accounts : attributes) {
   Criteria expression = new Criteria();
   accounts.forEach((key, value) -> expression.and(key).is(value));
   orExpression.add(expression);
 }
 orQuery.addCriteria(orCriteria.orOperator(orExpression.toArray(new Criteria[orExpression.size()])));
 List<User> userList = mongoOperations.find(orQuery, User.class);

Điều này sẽ xuất ra truy vấn như

{ "$or" : [{ "key1" : "value1", "key2" : "value2" }, { "key3" : "value3", "key4" : "value4" }] }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sự khác biệt giữa dòng thay đổi và con trỏ có thể điều chỉnh trong MongoDB

  2. MongoDB:Tính toán thời gian dừng giữa mỗi lần thay đổi giá trị trạng thái

  3. Truy vấn Mongoose trả về null

  4. Truy vấn MongoDB dựa trên số lượng tài liệu được nhúng

  5. mongodb $ unwind cho tài liệu lồng nhau không lý tưởng