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

MONGO получава само името на документите, но не и всички документи

Можете да използвате втори параметър на .find() метод за указване на проекция :

db.companies.find({}, { _id: 0, company_name: 1 })

което връща:

{ "company_name" : "gmc" }
{ "company_name" : "tesla" }
...

Или можете да използвате Aggregation Framework, за да получите един документ с масив от имена:

db.companies.aggregate([{ $group: { _id: null, company_names: { $push: "$company_name" } } }])

което връща:

{ "_id" : null, "company_names" : [ "gmc", "tesla", ... ] }

Първият трябва да е най-бързият начин, ако имате индекс на company_name . В този случай вашата заявка не се нуждае от сканиране на колекция и може да използва само индекс, за да получи заявените данни (покрита заявка ).




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да запишете масив от обекти в mongoose DB само с едно извикване?

  2. mongodb num_rows еквивалентен php

  3. mongodb:най-добрият начин да получите конкретни документи и след това останалите

  4. Удостоверяването на локалната стратегия за паспорт изглежда работи само на localhost със споделен екземпляр на MongoDB

  5. Как да свържете Mongo DB с Android приложение