共计 1101 个字符,预计需要花费 3 分钟才能阅读完成。
本篇内容主要讲解“怎么使用 MySQL 的 IFNULL()、ISNULL()和 NULLIF()函数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“怎么使用 MySQL 的 IFNULL()、ISNULL()和 NULLIF()函数”吧!
一、IFNULL 用法
1.1 IFNULL(expr1,expr2) 用法
假如 expr1 不为 NULL,则 IFNULL() 的返回值为 expr1; 否则其返回值为 expr2。IFNULL() 的返回值是数字或是字符串,具体情况取决于其所使用的语境。
mysql SELECT IFNULL(1,0);
– 1
mysql SELECT IFNULL(NULL,10);
– 10
mysql SELECT IFNULL(1/0,10);
– 10
mysql SELECT IFNULL(1/0, yes
– yes
IFNULL(expr1,expr2)的默认结果值为两个表达式中更加“通用”的一个,顺序为 STRING、REAL 或 INTEGER。
1.2 isnull(expr) 的用法:
如 expr 为 null,那么 isnull() 的返回值为 1,否则返回值为 0。
mysql select isnull(1+1);
– 0
mysql select isnull(1/0);
– 1
使用 = 的 null 值对比通常是错误的。
isnull() 函数同 is null 比较操作符具有一些相同的特性。请参见有关 is null 的说明。
二、ISNULL(expr) 的用法
如 expr 为 null,那么 isnull() 的返回值为 1,否则返回值为 0。
mysql select isnull(1+1);
– 0
mysql select isnull(1/0);
– 1
使用 = 的 null 值对比通常是错误的。
三、NULLIF(expr1,expr2)用法
如果 expr1 = expr2 成立,那么返回值为 NULL,否则返回值为 expr1。这和 CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END 相同。
mysql SELECT NULLIF(1,1);
– NULL
mysql SELECT NULLIF(1,2);
– 1
如果参数不相等,则 MySQL 两次求得的值为 expr1。
到此,相信大家对“怎么使用 MySQL 的 IFNULL()、ISNULL()和 NULLIF()函数”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!