用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
2017-05-12 10:38
447 查看
在数据库操作中,往往要对一些查询出来的空值进行替换,如函数SUM(),count(*)这个函数如果没有值会返回NULL,无法显示,我们希望显示为0
在MySQL中我们可以这样来写:
select IFNULL(sum(data),0) ...
在SQLSERVER中我们可以这样写:
select ISNULL(sum(data),0) ...
在ORACLE中我们可以这样写:
select NVL(sum(data),0) ...
对于所有数据库适用的方法可以这样写:
select COALESCE(sum(data),0) ...
nvl(bonus,0) 意思是 如果 bonus is null , 那么返回 0, 否则返回 bonus
coalesce(bonus,0,1) 意思是 返回 参数列表中, 第一个非 空的数据。
也就是相当于, 如果 bonus is null , 那么返回 0, 否则返回 bonus。
这里的最后一个参数 1, 目测是打酱油的。
coalesce(bonus,null,0) 意思是 返回 参数列表中, 第一个非 空的数据。
也就是相当于, 如果 bonus is null , 那么第2个参数还是 null, 最后返回第3个参数 0
decode(name,‘apple’,0) 意思是, 如果 name = 'apple' 那么返回 0
否则的话 , 就是返回 null 了。
在MySQL中我们可以这样来写:
select IFNULL(sum(data),0) ...
在SQLSERVER中我们可以这样写:
select ISNULL(sum(data),0) ...
在ORACLE中我们可以这样写:
select NVL(sum(data),0) ...
对于所有数据库适用的方法可以这样写:
select COALESCE(sum(data),0) ...
nvl(bonus,0) 意思是 如果 bonus is null , 那么返回 0, 否则返回 bonus
coalesce(bonus,0,1) 意思是 返回 参数列表中, 第一个非 空的数据。
也就是相当于, 如果 bonus is null , 那么返回 0, 否则返回 bonus。
这里的最后一个参数 1, 目测是打酱油的。
coalesce(bonus,null,0) 意思是 返回 参数列表中, 第一个非 空的数据。
也就是相当于, 如果 bonus is null , 那么第2个参数还是 null, 最后返回第3个参数 0
decode(name,‘apple’,0) 意思是, 如果 name = 'apple' 那么返回 0
否则的话 , 就是返回 null 了。
相关文章推荐
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- 用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
- SQL高级语句-NULL 函数-- ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数
- SQL Server -- SQL NULL值,ISNull(),Oracal NVL(),MYSQL IFNULL(),COALESCE()
- SQL Server ISNULL函数和Coalesce函数替换空值的区别
- SQL Server ISNULL函数和Coalesce函数替换空值的区别
- SQL Server ISNULL函数和Coalesce函数替换空值的区别
- sql 高级(七)(null 值,isnull()、nvl()、ifnull()、coalesce)
- SQL Server ISNULL函数和Coalesce函数替换空值的区别
- SQL ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数
- MYSQL 部分函数的运用(Iif, isnull , ifnull, nullif)
- 参数返回Oracle 常用函数:nvl/nullif/case when/wm_concat/replace
- MySQL中的isnull、ifnull和nullif函数用法
- Oracle中集中对于NULL操作的函数NVL,NVL2,以及COALESCE的用法
- SQL中的NULL函数:isnull、ifnull、nullif、coalesce
- oracle之简null空值问题,用nvl(a,b)函数解决
- MySQL中的isnull、ifnull和nullif函数用法