У меня есть коллекция под названием 'alldetails', в которой есть детали некоторой коллекции
{
"name" : "Test1",
"table_name" : "collection1",
"column_name" : "column1"
},
{
"name" : "Test2",
"table_name" : "collection2",
"column_name" : "column2"
},
{
"name" : "Test3",
"table_name" : "collection3",
"column_name" : "column3"
}
У меня есть collection1, collection2 и collection3, в которых есть column1, column2, colum3 соответственно
У меня естьчтобы извлечь все имя из 'alldetails', и я должен получить минимальное и максимальное значение другой таблицы на основе имени столбца.
Поэтому я хочу вывод, как показано ниже
{name: ["Test1","Test2","Test3"],
date: [{min_date: "2018-12-01", max_date: "2018-12-31", name: "Test1"},
{min_date: "2018-12-01", max_date: "2018-12-31", name: "Test2"},
{min_date: "2018-12-01", max_date: "2018-12-31", name: "Test3"}]
}
Я попробовал приведенный ниже код из-за того, что он не блокирует, он не ждет ответа.
alldetails.find({}, { _id: 0 }).then(async function(result) {
let result_data = {};
let resolvedFinalArray = {};
let array = [];
result_data["name"]= [];
result_data["date"] = [];
resolvedFinalArray = await Promise.all(result.map(async value => {
result_data["name"].push(value.name)
getResult(value.table_name,value.column_name,function(response){
result_data["date"].push({min_date: response.minvalue, max_date: response.maxvalue, name:value.name})
});
}));
setTimeout(function()
{
console.log(resolvedFinalArray);
}, 3000);
});
Пожалуйста, предложите мне решение.