用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值。

时间:2021-11-09 11:50:05
在数据库操作中,往往要对一些查询出来的空值进行替换,如函数SUM(),这个函数如果没有值会返回NULL,这是我们不希望看到的,

在MySQL中我们可以这样来写:

 
 
select IFNULL( sum (data), 0 ) ...

 

在SQLSERVER中我们可以这样写:

 
 
select ISNULL ( sum (data), 0 ) ...

 

在ORACLE中我们可以这样写:

 
 
select NVL( sum (data), 0 ) ...

  

对于所有数据库适用的方法可以这样写:

 
 
select COALESCE ( sum (data), 0 ) ...

COALESCE()用法:

 COALESCE(value,...)

返回第一个不是null的值,如果参数列表全是null,则返回null

sSELECT COALESCE(NULL,1);
        -> 1

SELECT COALESCE(NULL,NULL,NULL);

        -> NULL


转载:http://www.cnblogs.com/codewater/articles/1765009.html