J'ai une table appelée Call_Data et les données ressemblent à :
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
Je cherche à obtenir une sortie comme :
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
La logique est que la colonne AN_Time, AB_Time est en secondes. Je veux compter le nombre d'appels par jour qui sont dans une plage de 10 minutes et 5 minutes pour chaque colonne.
J'ai écrit quelque chose comme ceci :
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
Mais cela ne me donne pas le nombre total d'appels. Est-ce que quelqu'un peut m'aider ?