我试图按年升序/降序排序,但是当年份为0时我想要被视为最新的。
例如:
2013
2014
0
ORDER BY YEAR DESC should be
0
2014
2013
经过一些阅读后,我认为这应该有效,但事实并非如此:
ORDER BY CASE WHEN YEAR = 0 THEN 9999, YEAR ASC
答案 0 :(得分:2)
答案 1 :(得分:0)
试试这个:
SELECT *
FROM TableName
ORDER BY CASE WHEN YEAR = 0 THEN 0 ELSE 1 END, YEAR ASC
结果:
YEAR
0
2013
2014
SQL Fiddle中的示例。
答案 2 :(得分:0)
请试试这个
SELECT * FROM TableName 按顺序排列(年份= 0,9999,年份)DESC