sql >> Databáze >  >> NoSQL >> MongoDB

Jak se dotazovat s více podmínkami a tyto podmínky jsou závislé

podmínky vložíte do pole [ {}, {}, {}, {}] (protože pole je platný json).

db.inventory.find( { $or: [ { "symptom_1": "Z001" }, {"symptom_2": "Z002" }] })

ve skutečnosti možná hledáte operátor $in, který funguje na společném poli

db.collection.find({ "symptom_1": { $in: ["Z001", "Z002", "A001", "A002", "A003"]});

a zdá se, že chcete projít všechna pole symptomů, takže jako takové použijte $or a $in

db.collection.find({$or:
[
 {"symptom_1": { $in: ["Z001", "Z002", "A001", "A002", "A003"]}},
 {"symptom_2": { $in: ["Z001", "Z002", "A001", "A002", "A003"]}} ,
  ...
 ]} );

rovnátka mohou být neshodná, ale začněte tím.




  1. MongoDB:pomalé vyhledávání v potrubí ve srovnání se základním vyhledáváním

  2. Najděte dokumenty s poli, které obsahují dokument s určitým polem

  3. Problém s Redis install cc:Příkaz nenalezen

  4. Zneužívejte cURL ke komunikaci s Redis