Я видел несколько решений, но это не точные решения. У меня есть БД с результатами имя и название коллекции является метки, как показано ниже:Как получить все ключи в коллекции Mongodb?
db.marks.find();
{ "_id" : ObjectId("54f57522627af4bfdcf79764"), "name" : "John", "scroe1" : 23, "score2" : 21, "score5" : 12 }
{ "_id" : ObjectId("54f5761a627af4bfdcf79765"), "name" : "Mike", "scroe2" : 22, "score3" : 20, "score4" : 22 }
{ "_id" : ObjectId("559d0bc521cb2e056507c3e3"), "name" : "Bush", "score2" : 30 }
Я попытался с
var doc=db.marks.findOne(); for (var key in doc) print(key);
и я получил
_id
name
score1
score2
score5
Но я хочу, чтобы все ключи в коллекции, как ниже:
_id, name, score1, score2, score3, score4, score5
имя scroe1 оценка2 оценка3here
я уже решил эту проблему таким же образом. – learner
Могу ли я получить список вложенных ключей, используя такой подход? –
@AarohiKulkarni Вы могли бы, но вам нужно будет проверить тип значения doc [key], а если это объект, вы можете перебрать его с помощью другого вложенного для ... цикла. Если это массив, тогда вам нужно будет перебрать массив, проверив значение каждого массива, а если его объект, то перейдем к клавишам этого объекта. –