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