欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

mysql sql语句设置返回值为空时返回想要的字段

程序员文章站 2022-05-24 09:50:29
...
SELECT  COALESCE((SELECT IFNULL(name,0) from data2 where id = 100),0)  as name
假设有一个data表有id name 属性
id  name
1   null
2   bbb

select name from data where id = 1
会返回name null
此时我们想要让id的返回值为空时返回0可以使用ifnull函数
SELECT IFNULL(name,0) as name from data where id = 1
返回 name 0
然而当id的值不存在时依然返回null
当运行SELECT IFNULL(name,0) as name from data where id = 11
时返回 name null
此时我们就可以使用另一个函数COALESCE(null,0)来对上面的sql语句进行封装来达到目的
SELECT  COALESCE((SELECT IFNULL(name,0) from data where id = 100),0)  as name
即使在id的值不存在100时也会显示0