MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Tentukan beberapa kriteria dalam kueri mongo db musim semi

Anda dapat memfaktorkan ulang kode Anda untuk membuat $or ekspresi. Tidak ada $and explicit yang eksplisit dibutuhkan operator.

Sesuatu seperti

 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);

Ini akan menampilkan kueri seperti

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Dokumen pembaruan luwak Gagal dengan findByIdAndUpdate

  2. Membandingkan dua array objek dan memeriksa apakah mereka memiliki elemen yang sama

  3. Tidak dapat terhubung ke gambar buruh pelabuhan mongo dengan luwak

  4. Komentar Bersarang di MongoDB

  5. $unionWith – Setara MongoDB dengan UNION ALL