【发布时间】:2017-11-20 09:00:02
【问题描述】:
我有一个这样的查询:
SELECT
ROW_NUMBER() OVER(ORDER BY USER_FNM, USER_LNM) AS ROW_NUM,
USER_TEL, USER_FAX, USER_MOB
FROM
BAUSER
ORDER BY
CASE
WHEN @cOrderBy = 'USER_FNM_USER_LNM ASC' THEN USER_LNM
END ASC,
CASE
WHEN @cOrderBy = 'USER_FNM_USER_LNM DESC' THEN USER_LNM
END DESC,
CASE
WHEN @cOrderBy IS NULL THEN USER_KEY
END ASC
OFFSET @iStartIndex ROWS
FETCH NEXT @iRowsPerPage ROWS ONLY
我想做的是按两列排序 - 但这显示语法错误:
CASE WHEN @cOrderBy = 'USER_FNM_USER_LNM ASC' THEN USER_LNM, USER_FNM END ASC
知道在这种情况下如何按两列排序吗?
【问题讨论】:
-
这与我的问题无关。这家伙在问如何进行排序 - 我已经知道了,你可以从我的问题中看到。我不知道如何按两列排序。
-
@FrenkyB,您应该查看已接受答案中的链接文章。
标签: sql-server tsql