当ORDER BY基于CASE语句时,选择多个ORDER BY列的正确MS SQL语法是什么? 1 z( T- ^4 }+ a以下对于单列工作正常,但我需要按多列进行排序: 2 b- Y; F$ f% O( P1 MSELECT * FROM Products # x" Z: X/ s7 |+ f# [8 k$ YORDER BY : g5 V8 N5 c# N- y% Y+ yCASE WHEN @SortIndex = 1 THEN Price END ASC, 6 e$ k, k) M8 [& t5 \! Y. N6 FCASE WHEN @SortIndex = 2 THEN Price DESC, Title ASC END 你可以试试这个 + i3 R& t; o t6 S' ]9 a$ d4 v% qSELECT * FROM Products ) N9 T | v+ d& f3 B' [ORDER BY ' Z* d+ V& H" V$ ^% L
CASE WHEN @SortIndex = 1 THEN Price END ASC, 9 T- L2 [7 y' ~4 ^" o" ?+ bCASE WHEN @SortIndex = 2 THEN Price END DESC, / b/ x4 R. }" A5 W- J) b
CASE WHEN @SortIndex = 2 THEN Title END ASC