Mysql coalesce()函数认识和用法
coalesce()解释:返回参数中的第一个非空表达式(从左向右);
鉴于在mysql中没有nvl()函数, 我们用coalesce()来代替。
coalesce相比nvl优点是,coalesce中参数可以有多个,而nvl()中参数就只有两个。
当然,在oracle中也可以使用 case when....then....else......end
(比较强悍,case when 后可以跟表达式)。
www.2cto.com
使用示例:a,b,c三个变量。
Sql代码
select coalesce(a,b,c);
如果a==null,则选择b;如果b==null,则选择c;如果a!=null,则选择a;如果a b c 都为null ,则返回为null(没意义)。
这个参数使用的场合为:假如某个字段默认是null,你想其返回的不是null,而是比如0或其他值,可以使用这个函数
SELECT COALESCE(field_name,0) as value from table;
SELECT COALESCE(field_name,0) as value from table;
应用实例
coalesce函数表示可以返回参数中的第一个非空表达式,当你有N个参数时选取第一个非空值(从左到右)。
实例一:
select coalesce(null,"carrot","apple")
返回结果:carrot
实例二:
select coalesce(1,"carrot","apple")
返回结果:1
友情提示:coalesce里的参数如果是字符串的话,务必用单引号或者双引号廓起来;
这些语句可以直接在mysql里运行。
实例一:
select coalesce(null,"carrot","apple")
返回结果:carrot
实例二:
select coalesce(1,"carrot","apple")
返回结果:1
友情提示:coalesce里的参数如果是字符串的话,务必用单引号或者双引号廓起来;
这些语句可以直接在mysql里运行。