У меня есть база данных с датированными записями клиентов, тип клиента. Некоторые совершают покупку, некоторые нет.
Таблица выглядит так:
DATE|sessionID|customer_type|purchase value|
Я пытаюсь создать таблицу, которая вычисляет общее количество клиентов, общее количество клиентов, совершивших покупку, и сортирует их по типу и дате (еженедельно).
Код
CREATE TABLE KPIs (
'week' integer,
'customer_type' integer,
'customer_traffic' integer,
'customer_that_purchased' integer
);
INSERT INTO KPIs (
week,
customer_type,
customer_traffic,
customer_that_purchased)
SELECT
week,
customer_type_var,
count(session_id),
count(purchase_value)
FROM data
WHERE purchase_value <> 0
GROUP BY week, traffic_type_var ;
Проблема, возникающая при этом, заключается в том, что предложение WHERE применяется как для подсчета общего количества клиентов, так и для клиентов, совершивших покупку, что, очевидно, неверно (оно должно применяться только для подсчета клиентов, совершивших покупку).
Как я могу ВЫБРАТЬ несколько наборов данных и чтобы предложения WHERE применялись только к некоторым наборам данных, а не к другим?