MongoDB Вид поля во всех коллекциях - PullRequest
1 голос
/ 12 марта 2019

Как я могу создать динамическое представление в MongoDB 3.2.21 для отображения всех значений поля во всех коллекциях?

У меня есть поле с именем "machine_name", которое присутствует в большинстве моих коллекций. Я хочу создать динамическое представление, которое показывает все значения этого поля во всех коллекциях, если таковые существуют.

Пока, чтобы перечислить все значения, которые я ищу, я придумал этот код:

var machine_names = [];

db.getCollectionNames().forEach(function(collname) {
   machine_names.push(db[collname].find({"machine_name":{$exists:true}}));
});

print(machine_names);

Однако в результате получается формат, отличный от ожидаемого.

1 Ответ

1 голос
/ 12 марта 2019
var machine_names = [];
db.getCollectionNames().forEach(function(collname) {
   db.getCollection(collname).find({ machine_name: { $exists: true } } , 
     {machine_name:1}).forEach(function(name) {
       machine_names.push(name.machine_name)
     });
});
print(machine_names);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...