Создание сводной таблицы для отображения количества и добавления пропущенных месяцев в виде столбцов - PullRequest
0 голосов
/ 24 сентября 2019

Исходная таблица

id month
1  10/2017
1  10/2017
1  11/2017
2  1/2017
2  3/2017
3  9/2016
3  9/2016
3  5/2017
3  6/2017
3  6/2017
3  10/2017

Обновленная таблица:

id  9/2016 10/2016 11/2016 12/2016 1/2017 2/2017 3/2017 4/2017 5/2017 6/2017 7/2017 8/2017 9/2017 10/2017 11/2017
1   0      0       0       0       0      0      0      0      0      0      0      0      0      2       1
2   0      0       0       0       1      0      1      0      0      0      0      0      0      0       0
3   2      0       0       0       0      0      0      0      1      0      0      0      0      1       0

Обычно я использую python и pandas, поэтому не знаю, как это сделать в SQL.

Любая помощь будет высоко ценится.

Обновление запроса:

select
    sum(case when quarter = '2006-07-01' THEN 1 ELSE 0 END) AS '2006Q3',
    sum(case when quarter = '2006-10-01' THEN 1 ELSE 0 END) AS '2006Q4',
    sum(case when quarter = '2007-01-01' THEN 1 ELSE 0 END) AS '2007Q1',
    sum(case when quarter = '2007-04-01' THEN 1 ELSE 0 END) AS '2007Q2',
...
from trans_v3
group by core_id

1 Ответ

1 голос
/ 24 сентября 2019

Ну, вы могли бы перебором:

SELECT SUM(CASE WHEN month = '9/2016' THEN 1 ELSE 0 END) AS 201609
     , SUM(CASE WHEN month = '10/2016' THEN 1 ELSE 0 END) AS 201610
...
FROM t
GROUP BY id
...