多语言展示
当前在线:743今日阅读:167今日分享:16

MySQL中的isnull、ifnull和nullif函数用法

MySQL是一个关系型数据库,和sqlserver一样。或网站都是使用这个数据库来保存数据的。下面我们来看一下数据库中关于null的几个函数的用法。
方法/步骤
1

首先是isnull函数。这个函数主要是用在sql语句中的where条件语句里,用来看某个字段是为空(null),要注意的是空字符串是不属于null的。比如:select * from student where isnull(gender)

2

结果如图。

3

ifnull函数呢?又是什么意思?ifnull主要是用在select字段数据里,相当于代码里的一个二元函数,即看字段是否为空,不为空则返回该字段,为空则返回函数里的第二个参数的值。比如:select id, ifnull(gender, '未知') as gender from student

4

执行上方的sql语句,我们就得到如下的结果。可以看到当gender字段为空,没有设置值时,我们不想它显示为空,则可以使用ifnull函数,让其显示为‘未知’。

5

NULLIF是另一个二元函数,主要用来看二个表字段的数据是否相同的。当二个字段数据相同,该函数就会返回null,如果不相同,则会返回第一个参数的值。比如:select id, nullif(id, gender) as gender from student

6

运行上方的sql,会得到如图的结果。

7

要注意的是nullif里的二个参数除了可以是表字段外,还可以是一个字符串,这样我们就可以用一个字段来和一个字符串比较,而不是二个表字段来比较。比如:select id, nullif(id, 'a') as gender from student

推荐信息