按顺序排列的SQL案例
我正在尝试按年份升序/降序排序,但是我希望当年份为0时将被视为最新的年份 例如:按顺序排列的SQL案例,sql,sql-order-by,case,Sql,Sql Order By,Case,我正在尝试按年份升序/降序排序,但是我希望当年份为0时将被视为最新的年份 例如: 2013 2014 0 ORDER BY YEAR DESC should be 0 2014 2013 读了一些书后,我认为这应该行得通,但实际上不行: ORDER BY CASE WHEN YEAR = 0 THEN 9999, YEAR ASC 请尝试: select * from TableName order by case YEAR when 0 then 9999 else
2013
2014
0
ORDER BY YEAR DESC should be
0
2014
2013
读了一些书后,我认为这应该行得通,但实际上不行:
ORDER BY CASE WHEN YEAR = 0 THEN 9999, YEAR ASC
请尝试:
select *
from TableName
order by case YEAR when 0 then 9999 else YEAR end desc
试试这个:
SELECT *
FROM TableName
ORDER BY CASE WHEN YEAR = 0 THEN 0 ELSE 1 END, YEAR ASC
结果:
YEAR
0
2013
2014
中的一个示例。请尝试此示例
挑选*
从表名
按IF订购(年份=0,9999,年份)说明
当年份=0时,按案例排序,然后0其他1结束
当x然后y其他z结束时,按案例排序