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

Jak mohu zadat dotaz na sadu objektů s polem hodnot v mongoose?

Můžete použít kombinaci $objectToArray a $arrayToObject k filtrování objektu podle názvů dynamických polí, ale pokud jsou vaše parametry známé při vytváření dotazu, je snazší použít běžné .find() a použijte projekci:

db.collection.find({},{ "rank.Person1": 1,  "rank.Person2": 1})

let input = ['Person1', 'Person2'];
let entries = input.map(p => ([`rank.${p}`, 1]))
let projection = Object.fromEntries(entries);
console.log(projection);

Hřiště Mongo




  1. Aktuální analyzátor řetězců adres URL je zastaralý

  2. Morphia List<Map<String,Object>>> return Embedded element není DBObject při operaci hledání

  3. Pravidlo MongoDB pro odstranění řádku, pokud určitý sloupec obsahuje konkrétní hodnotu

  4. Pořadí klíčových hodnot v mongoDb