具有多列和 Desc/Asc 排序的 Order By 子句的 CASE 语句 [英] CASE Statement for Order By Clause with Multiple Columns and Desc/Asc Sort
本文介绍了具有多列和 Desc/Asc 排序的 Order By 子句的 CASE 语句的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
继我之前的问题之后 案例陈述对于带有 Desc/Asc 排序的 Order By 子句 我有这样的语句:
Following on from my earlier question here Case statement for Order By clause with Desc/Asc sort I have a statement like this:
SELECT
*
FROM
TableName
WHERE
ORDER BY
CASE @OrderByColumn WHEN 1 THEN Forename END DESC,
CASE @OrderByColumn WHEN 2 THEN Surname END ASC
这很有效,但有时我需要的不仅仅是按顺序排列的列.我实际上需要这样的东西:
This works well, but sometimes I need more than column in the order by. I actually need something like this:
.....
ORDER BY
CASE @OrderByColumn WHEN 1 THEN Forename, Date, Location END DESC
我不知道如何使 CASE
语句允许 THEN
部分中的多列.
I can't work out how to make the CASE
statement allow multiple columns in the THEN
part.
推荐答案
你需要这个吗?
ORDER BY
CASE @OrderByColumn WHEN 1 THEN Forename END DESC, Date, Location,
CASE @OrderByColumn WHEN 2 THEN Surname END ASC
这篇关于具有多列和 Desc/Asc 排序的 Order By 子句的 CASE 语句的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文