Table1
ID Date Time Functionkey
001 23-02-2009, 08:00:00 A
001 23-02-2009, 12:00:00 A
001 23-02-2009, 13:00:00 B
001 23-02-2009, 14:00:00 B
001 23-02-2009, 16:00:00 C
001 23-02-2009, 17:00:00 C
001 23-02-2009, 19:00:00 D
001 23-02-2009, 21:00:00 D
001 24-02-2009 10:00:00 A
001 24-02-2009 18:00:00 D
001 25-02-2009 09:00:00 A
001 25-02-2009 12:00:00 B
001 25-02-2009 18:00:00 D
....,
Я хочу получить min (время), где функциональная клавиша = 'A', max (время), где функциональная клавиша = 'B', min (время), где функциональная клавиша = 'c'. max (время), где функциональная клавиша = 'D'
Запрос:
SELECT
ID, Date,
CASE WHEN function = 'A' THEN min(time) END as Intime1,
CASE WHEN function = 'B' THEN max(time) END as Outtime1,
CASE WHEN function = 'C' THEN min(time) END as Intime2,
CASE WHEN function = 'D' THEN max(time) END as Outtime2
FROM dbo.table1
GROUP BY id, date, function
Получение вывода
ID Date, Intime1, Outtime1, Intime2, Outtime2
001 23-02-2009 08:00:00, null, null, null
001 23-02-2009 null, 14:00:00, null, null
001 23-02-2009 null, null, 16:00:00, null
001 23-02-2009 null, null, null, 21:00:00
...
Мне нужен вывод в одну строку, Как сделать запрос
ID Date, Intime1, Outtime1, Intime2, Outtime2
001 23-02-2009 08:00:00, 14:00:00. 16:00:00, 21:00:00
001 24-02-2009 09:00:00 null, null, 18:00:00
001 25-02-2009 09:00:00, 12:00:00, null, 18:00:00
...
Как изменить мой запрос?