У меня есть следующая таблица в SQL Server 2008:
CREATE TABLE tbl (ID INT, dtIn DATETIME2, dtOut DATETIME2, Type INT)
INSERT tbl VALUES
(1, '05:00', '6:00', 1),
(2, '05:00', '7:00', 1),
(3, '05:01', '8:00', 1),
(4, '05:00', '8:00', 1),
(5, '05:00', '6:00', 2),
(6, '05:00', '7:00', 2)
который выбирает идентификаторы всех записей одного типа с одинаковой датой dtIn, упорядоченных по stOut в порядке возрастания:
SELECT DISTINCT tbl.id FROM tbl
LEFT JOIN tbl AS t1
ON tbl.type = t1.type AND
tbl.dtIn = t1.dtIn
ORDER BY tbl.dtOut ASC
Но выдает ошибку:
ORDER BY items must appear in the select list if SELECT DISTINCT is specified
Я пытался поместить этот ORDER BY в разные места, и все это, похоже, не работает. Что я здесь делаю неправильно?