【发布时间】:2020-01-25 00:58:52
【问题描述】:
我的 sql 语句中有以下内容
ORDER BY
CASE WHEN @OrderColumn = 'PointName' AND @Ordertype = 'ASC' THEN CD.PointName END ASC,
CASE WHEN @OrderColumn = 'Name' AND @Ordertype = 'ASC' THEN CD.Name END DESC,
CASE WHEN @OrderColumn = 'ParName' AND @Ordertype = 'ASC' THEN P.ParName END ASC,
...
当@OrderCoumng 是“PointName”时,我需要按 CD.PointName 和 CD.PointPerson 排序
我尝试执行以下操作,但出现错误(ASC 附近的语法不正确):
CASE WHEN @OrderColumn = 'PointName' AND @Ordertype = 'ASC' THEN CD.PointName, CD.PointPerson END ASC,
【问题讨论】:
-
请停止喊叫。全部大写的文本更难阅读和理解,并且 SHOUTING 不会更快地为您提供帮助。谢谢。
-
CASE WHEN @OrderColumn = 'PointName' AND @Ordertype = 'ASC' THEN CD.PointName END ASC, CASE WHEN @OrderColumn = 'PointName' AND @Ordertype = 'ASC' THEN CD.PointPerson END ASC, ...不工作? -
这能回答你的问题吗? CASE WHEN statement for ORDER BY clause
标签: sql sql-server