函数-COALESCE()函数处理空值

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qichangjian/article/details/88949124

1.Coalesce()函数介绍

这个函数主要用来进行空值处理,其参数格式如下: COALESCE ( expression,value1,value2……,valuen) 
COALESCE()函数的第一个参数expression为待检测的表达式,而其后的参数个数不定。
COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式。
	如果expression不为空值则返回expression;
	否则判断value1是否是空值,如果value1不为空值则返回value1;
	否则判断value2是否是空值,如果value2不为空值则返回value2;
	……以此类推,
如果所有的表达式都为空值,则返回NULL。 

2.示例测试

1.需求

我们将使用COALESCE()函数完成下面的功能,返回人员的“重要日期”

如果出生日期不为空则将出生日期做为“重要日期”,
如果出生日期为空则判断注册日期是否为空,
如果注册日期不为空则将注册日期做为“重要日期”,
如果注册日期也为空则将“2008年8月8日”做为“重要日期”
2.表的创建和测试数据插入

表tp_date结构 :(fname姓名,birthday出生日期,fregday注册日期)

create table tp_date(
       fname varchar(20),
       fbirthday date,
       fregday date
)

插入测试数据数据
在这里插入图片描述

3.查询
//MYSQL、MSSQLServer、DB2写法: 
select fname,fbirthday,fregday,
       coalesce(fbirthday,fregday,'2018-08-08') as importday
from tp_date
//Oracle写法:
select fname,fbirthday,fregday,
       coalesce(fbirthday,fregday,to_date('2018-08-08','YYYY-MM-DD HH24:MI:SS')) as importday
from tp_date
查询结果:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qichangjian/article/details/88949124
今日推荐