有:
SELECT DISTINCT TOP 100 * FROM mytable ORDER BY date ASC
如何使日期中的空值最后?
非常感谢。
答案 0 :(得分:5)
有些数据库支持order by
中最后一个NULL的语法,有些则不支持。所以,我用:
select distinct top 100 *
from MyTable
order by (case when date is null then 1 else 0 end), date asc
或者,如果我不想输入那么多:
order by coalesce(date, '9999-12-12') -- or something like that
您还可以将distinct放在子查询中:
select top 100 *
from (select distinct *
from mytable
) t
order by (case when date is null then 1 else 0 end), date asc
假设date
位于列列表中,则第一个版本应该有效。