背景
SQL做BI报表的时候,按时间倒序展示数据,发现时间字段值为 null
空值的数据,排在了最前面。
解决
select a, b, created_at
from mytable1
order by COALESCE(created_at, '1900-1-1') desc
COALESCE函数简介
COALESCE
函数用于从其参数列表中返回第一个非NULL值。如果所有给定的参数都是NULL,那么COALESCE函数将返回NULL。
COALESCE(column, expression1, expression2, ..., expressionN)
示例
假设你有一个Employees表,其中包含员工的salary列,你想要选择一个列,显示员工的薪水,如果薪水是NULL,则显示0。
SELECT COALESCE(salary, 0) AS effective_salary FROM Employees;
sql中COALESCE函数详解 https://blog.csdn.net/weixin_46160781/article/details/136349216