У меня есть таблица с (id, name, creation_timestamp)
Я хочу написать запрос, который дает:
name, 2019-09-15, 2019-09-16, ... , 2019-10-15
Дата столбца указана за последние 30 дней.
В каждом столбце будет количество записей на имя, которое соответствует дате.
Я знаю, как создать это в виде строк
select name
,cast ( creation_timestamp as DATE)
,count(1)
from my_bale
group by name, cast ( creation_timestamp as DATE)
Но это дает мне 3 столбца, и датыперечислены во 2-х столбцах. Как я могу преобразовать это в нужный вывод?
Допустим, моя таблица имеет
id, name , creation_timestamp
1 A 2019-10-10 21:52:22.904
2 A 2019-10-10 22:52:22.904
3 B 2019-10-10 21:52:22.904
3 C 2019-10-11 21:52:22.904
Вывод должен быть:
name, 2019-09-15, 2019-09-16, ... , 2019-10-10, 2019-10-11, ..., 2019-10-15
A 0 0 2 0 0
B 0 0 1 0 0
C 0 0 0 1 0
Аналогично вопросу sql диапазон дат в столбце и подсчет по группам но ответа не последовало
Я использую Presto, но нативное SQL-решение прекрасно