最近使用了IFNULL函数,普通使用方法和注意点之前都知道,知道今天发现了新的问题
1、常规使用方法
第一个参数为 NULL:
SELECT IFNULL(NULL, "DONGJIN");
以上实例输出结果为:
DONGJIN
第一个参数不为 NULL:
SELECT IFNULL("Hello", "DONGJIN");
以上实例输出结果为:
Hello
2、N/A的处理
数据库中经常会遇到N/A,它用上面的IFNULL函数不起作用,为了让函数起作用,可以使用max和min
SELECT IFNULL(max(version), "DONGJIN") where id = '1'
version是根据筛选条件有这条记录,但是这个version字段为N/A时起作用的,
如果根据筛选条件没有记录,则这个IFNULL函数不起作用,正确写法参照如下的3
3、根据条件没有记录,像如下方式处理
select
IFNULL(max(t.version)
from
(SELECT version as version where id = '1') t
基本意思是先要保证有一条记录,然后再使用IFNULL(max(t.version)