@kote22

Модификация массива, как бы так это сделать?

Допустим в ms sql есть таблица с списком лошадей: с id и именем
каждая лошадь делает несколько забегов в день, и пробегает некоторое число км а так же выигрывает некоторую сумму денег.
дак вот, нужно сделать отчет о забегах за месяц:
тобишь вывести массив вида : [["1","Володя",3 ,230,],["2","Анатолий",3 ,230,],["3","Олег",0 ,0,]]

я решил это сделать так:
var final_arr = new Array();

var request = new Request("SELECT H.Id, H.name, R.km, R.price   FROM dbo.Horses H, dbo.Races R WHERE R.item = H.Id ORDER BY H.Id ", function(err, rowCount, rows) {

     var horses = new Array();

    horses.push(rows[0].value);
    horses.push(rows[1].value);
    horses.push(rows[2].value);
    if(rows[3].value == null){
      rows.push(0);
    } else {
      horses.push(rows[3].value);
    }
 
  final_arr.push(rows);

}


и в общем то я получаю большой массив и мне надо его как-то сократить и сложить км и выйгрыши
  • Вопрос задан
  • 116 просмотров
Пригласить эксперта
Ответы на вопрос 3
@aol-nnov
агрегатные функции в sql еще не проходили?
Ответ написан
Комментировать
@dmz9
map-функция в помощь.
https://developer.mozilla.org/ru/docs/Web/JavaScri...
проходит по каждому элементу массива, в конце возвращает массив с таким же количеством элементов.
вот внутри этой функции-колбека и формируешь под каждый элемент вот такой массив ["1","Володя",3 ,230], и его же return из этой функции.
Ответ написан
Комментировать
Igor-Maf
@Igor-Maf
Senior Front End developer
мне надо его как-то сократить и сложить км и выйгрыши


Если Вам нужно что-то сложить, то Вам поможет метод reduce, где-то в этом видео девочка очень хорошо рассказывает об этом методе и показывает, как раз, примеры аналогичных задач. Там, в описании к видео, вроде, есть ссылка на репозиторий с этими примерами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы