阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

MySQL中的ifnull()函数判断空值

140次阅读
没有评论

共计 686 个字符,预计需要花费 2 分钟才能阅读完成。

我们知道,在不同的数据库引擎中,内置函数的实现、命名都是存在差异的,如果经常切换使用这几个数据库引擎的话,很容易会将这些函数弄混淆。

比如说判断空值的函数,在 Oracle 中是 NVL() 函数、NVL2() 函数,在 SQL Server 中是 ISNULL() 函数,这些函数都包含了当值为空值的时候将返回值替换成另一个值的第二参数。

但是在 MySQL 中,ISNULL() 函数仅仅是用于判断空值的,接受一个参数并返回一个布尔值,不提供当值为空值的时候将返回值替换成另一个值的第二参数。

SELECT ISNULL(‘i like yanggb’); // 0
SELECT ISNULL(NULL); // 1

因此 MySQL 另外提供了一个 IFNULL() 函数。

简单介绍

IFNULL() 函数是 MySQL 内置的控制流函数之一,它接受两个参数,第一个参数是要判断空值的字段或值(傻?),第二个字段是当第一个参数是空值的情况下要替换返回的另一个值。如果第一个参数不是 NULL,则返回第一个参数;否则,将返回第二个参数。两个参数都可以是文字值或表达式。

函数的语法

IFNULL(v1, v2)

其中,如果 v1 不为 NULL,则 IFNULL 函数返回 v1; 否则返回 v2 的结果。

简单示例

SELECT IFNULL(NULL, ‘i like yanggb’); // i like yanggb

在上面的例子中,由于第一个参数为 NULL,所以返回的是第二个参数的值。

SELECT IFNULL(‘i like yanggb’, ‘i do like yanggb’); // i like yanggb

在上面的例子中,由于第一个参数不为 NULL,所以返回的是第一个参数的值。

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计686字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中