Преобразование строк в столбцы
I have a table called clients where I track the email sent to people and it looks this. Userid action date TRACKING zip Subject cbg10 O 1/2/2020 Amz 30105 $1 Sales journey cbg10 O 1/2/2020 Amz 30105 $1 Sales journey cbg10 C 1/2/2020 Amz 30105 $1 Sales journey cbg10 P 1/2/2020 Amz 30105 $1 Sales journey cbg10 O 4/18/2020 TG 67548 Summer arrives cbg10 P 4/18/2020 TG 67548 Summer arrives cbg10 C 4/18/2020 TG 67548 Summer arrives
Вот как, я надеюсь, будет выглядеть таблица: Как вы можете этот человек открыть электронную почту 2 раза. Вместо 2 строк,как в первой таблице, эта объединяет выполненные действия
Userid date O(Open) C(Click) P(Purchase) TRACKING zip Subject cbg10 1/2/2020 2 1 1 Amz 30105 $1 Sales journey cbg10 4/2/2020 1 1 1 Amz 30105 Summer arrives&низкотемпературный;
Что я уже пробовал:
Это то, что я пробовал, к сожалению, это дает мне ряд для каждого открытого. Итак, если кто-то откроет электронное письмо 3 раза, оно даст мне 3 строки вместо 1 строки, которая отображается в Столбцах O(open) 3:
select UserId, max(case when Aciton = 'O' then 1 else 0 end) as [O(Open)], max(case when Aciton = 'P' then 1 else 0 end) as [P(Paid)], max(case when Aciton = 'C' then 1 else 0 end) as [C(Cash)], [Date], Tracking, Zip from myTable GROUP BY UserId, [Date], [Tracking], [Zip]