Vous pouvez utiliser le deuxième paramètre de .find()
méthode pour spécifier une projection
:
db.companies.find({}, { _id: 0, company_name: 1 })
qui renvoie :
{ "company_name" : "gmc" }
{ "company_name" : "tesla" }
...
Ou vous pouvez utiliser Aggregation Framework pour obtenir un seul document avec un tableau de noms :
db.companies.aggregate([{ $group: { _id: null, company_names: { $push: "$company_name" } } }])
qui renvoie :
{ "_id" : null, "company_names" : [ "gmc", "tesla", ... ] }
Le premier devrait être le moyen le plus rapide si vous avez un index sur company_name
. Dans ce cas, votre requête n'a pas besoin d'analyser la collection et peut utiliser uniquement l'index pour obtenir les données interrogées (requête couverte
).