Cú pháp MS SQL đúng để chọn nhiều cột ORDER BY khi ORDER BY dựa trên câu lệnh CASE là gì?Thứ tự động bằng lệnh SELECT với nhiều cột
dưới đây hoạt động tốt với các cột duy nhất, nhưng tôi cần phải sắp xếp theo nhiều cột:
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
Đối với vấn đề cụ thể của tôi, tôi sử dụng 'ASC END THEN -Giá, 'thay vì' THEN Giá END DESC' như chúng tôi đã có để tải các loại các cột từ cùng một cột trong DB. Vì vậy, để làm cho nó sạch sẽ, chúng tôi tách từng cột bằng một khoảng trắng và sử dụng dấu âm như là một thay thế cho 'DESC' – th3byrdm4n