Ich mache eine Pivot-Tabelle mit Daten über die Oberseite, Kunden auf der Seite und Verkaufsdaten in der Mitte. Als Teil davon bekomme ich meine IN-Klausel von einer temporären Tabelle #FileDates. Hier ist der Code, der funktioniert, um die Daten in der ältesten Reihenfolge zu erhalten. Ich möchte es in der neuesten bis ältesten Reihenfolge bekommen.SQL Query Datum Sortierreihenfolge funktioniert nicht
SELECT * INTO #FileDates
FROM
(SELECT distinct DLDate [DATE] from Daily where DLDate between @begin31 and @end ) TAB;
Dies wird durch gefolgt:
DECLARE @cols NVARCHAR (MAX)
SELECT @cols = COALESCE (@cols + ',[' + CONVERT(NVARCHAR, [DATE], 106) + ']',
'[' + CONVERT(NVARCHAR, [DATE], 106) + ']')
FROM (SELECT DISTINCT [DATE] FROM #FileDates) PV
Ich habe versucht, einen Auftrag durch Klausel in meiner Unterabfrage gestellt, aber es hat nicht funktioniert, weil Sie nicht, um durch in Inline-SQL haben. Ich habe versucht, es in:
SELECT distinct DLDate [DATE] into #FileDates
from Daily where DLDate between @begin31 and @end order by Date desc
Und der Befehl ausgeführt, aber die Daten waren nicht in der richtigen Reihenfolge. Bitte helfen Sie.
'@ cols' ist eine skalare Variable. Es ist nicht bekannt, welcher Wert aus mehreren Zeilen ihm zugewiesen wird. Verwenden Sie "top 1" mit "order by", um sicher zu sein. –