У меня есть таблица с именем Call_Data, и данные выглядят так:
Arr_Date Interval AN_Time AB_Time
08/08/2011 1600 113 NULL
08/08/2011 1400 317 NULL
08/09/2011 1200 298 NULL
08/09/2011 1000 NULL 194
08/10/2011 1200 256 NULL
08/10/2011 1400 NULL 132
Я хочу получить вывод как:
Arr_Date Total_calls AN_10_min AN_5_min AB_10_Min AB_5_min
08/08/2011 2 2 1 0 0
08/09/2011 2 1 1 1 1
08/10/2011 2 1 1 1 1
Логика - это столбец AN_Time, AB_Time в секундах. Я хочу посчитать количество вызовов в день, которые находятся в пределах 10 минут и 5 минут для каждого столбца.
Я написал что-то вроде этого:
SELECT ARR_date,
CASE WHEN AN_TIME <300 THEN 1 ELSE 0 END AS AN_5_min ,
case WHEN AN_TIME <600 THEN 1 ELSE 0 END AS AN_10_min,
CASE WHEN AB_TIME <300 THEN 1 ELSE 0 END AS AB_5_min ,
case WHEN AB_TIME <600 THEN 1 ELSE 0 END AS AB_10_min
FROM Call_Data
GROUP BY AR_Date,AN_TIME,AB_TIME
Но это не радует меня общим количеством звонков. Кто-нибудь может мне помочь?