SELECT DISTINCT с LEFT JOIN, ORDERed BY в t -SQL

У меня есть следующая таблица в 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 в разные места, и все это, похоже, не работает. Что я здесь делаю неправильно?

9
задан marc_s 20 July 2012 в 21:06
поделиться