Wie lautet die richtige MS SQL-Syntax zum Auswählen mehrerer ORDER BY-Spalten, wenn ORDER BY auf einer CASE-Anweisung basiert?Dynamische Reihenfolge von SELECT mit mehreren Spalten
Die unten arbeitet mit einzelnen Spalten in Ordnung, aber ich muss nach mehreren Spalten sortieren:
SELECT * FROM Products
ORDER BY
CASE WHEN @SortIndex = 1 THEN Price END ASC,
CASE WHEN @SortIndex = 2 THEN Price DESC, Title ASC END <-- problem line
Für mein besonderes Problem habe ich 'DANN -Preis END ASC,' statt 'DANN Preis END DESC', wie wir die Art zu laden, hatten Spalten aus derselben Spalte in der DB. Um es sauber zu machen, trennten wir jede Spalte durch ein Leerzeichen und verwendeten das negative Zeichen als Ersatz für 'DESC' – th3byrdm4n