相关连接
SQL: coalesce()函数
sql中的if()和ifnull() 的用法和区别
mysql coalesce函数与 ifnull 函数用法
1.fnull(字段, 默认值) :字段如果是null就返回默认值
# fnull(null, a),ifnull(a,b), ifnull里有两个数,如果第一个不是null,是a非null,就都等于a,
# 如果a=Null,就都为a。
SELECT IFNULL(NULL,"11"); -> 11
SELECT IFNULL("00","11"); -> 00
# 在thinkphp里面使用
db('表名')->field('IFNULL(字段名,指定的值) as 别名')......................
2.coalesce() 解释:返回参数中的第一个非空表达式(从左向右依次类推);
# coalesce: 联合,合并。返回传入的参数中第一个非null的值
select coalesce(null,2,3); // Return 2
select coalesce(null,null,3); // Return 3
select coalesce(1,2,3); // Return 1
mysql coalesce函数与 ifnull 函数对比
# coalesce: 联合,合并。返回传入的参数中第一个非null的值
SELECT
COALESCE (NULL, NULL, 1, 2);
# 如果只有两个参数和IFNULL用法一样, 1 , 1 , 1 , NULL
SELECT
IFNULL(NULL, 1) as ifnull,
COALESCE (NULL, 1) as coalesceTwo,
COALESCE (NULL, NULL, 1, 2) as coalesceFour,
COALESCE (NULL, NULL, NULL, NULL) as coalesceAllNull;