SQL 函数NULLIFNULLISNULLCOALESCE

Posted Blogger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 函数NULLIFNULLISNULLCOALESCE相关的知识,希望对你有一定的参考价值。

NULLIF函数

  NULLIF(Expression1,Expression2):给定两个参数Expression1和Expression2,如果两个参数相等,则返回NULL;否则就返回第一个参数。

  等价于:Case WHEN Expression1=Expression2 Then NULL ELSE Expression1。

  例如Select NULLIF(1,1)返回NULL,Select NULLIF(1,2)返回1。

  有一个实际的应用,例如防止除0操作的放生,可以使用a/NULLIF(b,0),这样就不怕b是0了,当然除0操作也可以通过别的方式判断。

NULL

  NULL是个神奇的东西,表示空值,未知值,任何数与它加减乘除都返回NULL。

ISNULL函数

  ISNULL(Expression1,Expression2):给定两个参数Expression1和Expression2,如果Expression1是NULL,那么返回Expression2,否则返回Expression1。

  等价于:Case WHEN Expression1 is NULL Then Expression2 ELSE Expression1。

  例如Select ISNULL(NULL,1)返回1,Select ISNULL(1,2)返回1。

  有一个实际的应用,可以对空值进行默认值替代,例如SELECT ISNULL(email,没有填写email) from table1,所有email为null的,用没有填写email来替代。

 COALESCE函数

  COALESCE(Expression1,Expression2,Expression3,......):接受一系列的表达式或列,返回第一个非空的值。

      例如SELECT COALESCE(NULL,NULL,4,NULL,NULL,5),那么返回,如果里面的参数都为NULL,那么会报错。

 

以上是关于SQL 函数NULLIFNULLISNULLCOALESCE的主要内容,如果未能解决你的问题,请参考以下文章

sql 函数

sql聚合函数的应用

常用的sql函数

sql 语句中那些是聚合函数?

sql中如何写函数

SQL时间函数