ich die folgende Tabelle 2008 in SQL Server haben:SELECT DISTINCT mit LEFT JOIN, bestellt in T-SQL-BY
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)
die IDs aller Datensätze des gleichen Typs, mit dem gleichen DTIN Datum auswählt, bestellt von Stout aufsteigend:
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
Aber es gibt mir eine Fehlermeldung:
ORDER BY items must appear in the select list if SELECT DISTINCT is specified
ich versuchte setzen, dass ORDER BY in d verschiedene Orte und alles scheint nicht zu funktionieren. Was mache ich hier falsch?
Wie die Fehlermeldung deutlich sagt: Wenn Sie 'SELECT DISTINCT' verwenden, müssen die in der' ORDER BY'-Klausel angegebenen Spalten auch in der Liste der ausgewählten Spalten erscheinen - verwenden Sie also SELECT DISTINCT tbl.id , tbl.dtOut VON ..... ' –
Oh. Aha. Also muss ich sie auch auswählen. Hmm ... interessante Anforderung ... aber, oh gut ... – ahmd0