MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да направя заявка за набор от обекти с масив от стойности в mongoose?

Можете да използвате комбинация от $objectToArray и $arrayToObject за да филтрирате вашия обект по имена на динамични полета, но ако вашите параметри са известни, когато изграждате заявката си, тогава е по-лесно да използвате обикновен .find() и приложете проекция:

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

Mongo Playground




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Rails 3:как да използвате активен запис и mongoid едновременно

  2. Премахнете обект от вложен масив с $pull и $[identifier] (mongoDB 3.6)

  3. .updateOne на MongoDB не работи в Node.js

  4. MongoDB използва ли повторно изтрито пространство?

  5. Как да конвертирате BSON типа на драйвера на Rust Mongo в ObjectId?