Заполните отсутствующие данные массива 0 в отсутствующие даты - PullRequest
1 голос
/ 18 апреля 2020

У меня есть следующий запрос MySQL, который группирует мои данные по столбцам даты и состояния и дает мне набор данных следующим образом:

{date: '2020-04-20', status: 'Active', total: 4},
{date: '2020-04-20', status: 'Paid', total: 6},
{date: '2020-04-20', status: 'Waiting', total: 7},
{date: '2020-04-20', status: 'New', total: 4},
{date: '2020-04-21', status: 'Active', total: 7},
{date: '2020-04-21', status: 'Paid', total: 4}

Моя цель - создать линейную диаграмму, где x осями будут разные даты, статусы, у которых нет данных на данный день, просто присваиваются 0.

Я пытаюсь создать следующие массивы:

Ось X: '2020-04-20', '2020-04-21' Ось Y: Active, Wait, Paid, New

Я могу успешно создать предыдущие массивы, используя функцию ... set, однако я изо всех сил пытался присвоить значение 0, когда дата отсутствует.

Решение этой проблемы привело бы к следующим наборам данных

Wating = [7, 0] New = [4, 0] Active = [4,7] Paid = [6,4]

Я не знаю, является ли этот подход к созданию массива правильным из-за возможности наличия 1 или 25 различных состояний.

Возможно, выполнить итерацию по объекту с использованием статусов и присвоить 0 там, где столбец даты отсутствует? Я полностью потерян здесь.

Я ценю любую помощь.

Кроме того, изменение запроса не может быть и речи. Я хотел бы сделать это с js.

...