Musisz zrobić osobną instrukcję case dla każdej kolumny:
SELECT queuecall1.StartTime,
queuecall1.QueueName,
CASE WHEN ExitReason = 7 THEN 1 ELSE 0 END AS CallsAbandoned,
CASE WHEN ExitReason = 1 THEN 1 ELSE 0 END AS CallsAgent,
CASE WHEN calltype = 1 THEN 1 ELSE 0 END AS CallsInternal,
CASE WHEN calltype = 2 THEN 1 ELSE 0 END AS CallsExternal
FROM (queuecall queuecall1 INNER JOIN connect connect1
ON queuecall1.ConnectTableID=connect1.ID) INNER JOIN call call1
ON connect1.CallTableID=call1.ID
Dałoby to wynik taki jak:
StartTime | QueueName | CallsAbandoned | CallsAgent | CallsInternal | CallsExternal
----------+-----------+----------------+------------+---------------+---------------
10:59 | Queue1 | 1 | 0 | 1 | 0
11:05 | Queue1 | 1 | 0 | 1 | 0
11:11 | Queue1 | 0 | 1 | 1 | 0
11:12 | Queue1 | 0 | 0 | 0 | 1
11:24 | Queue1 | 0 | 1 | 0 | 1
11:37 | Queue1 | 1 | 0 | 0 | 1
11:42 | Queue1 | 0 | 1 | 0 | 0