MySQL-IFNULL()判断NULL取另一个值 作者:马育民 • 2021-03-15 17:00 • 阅读:10152 # 提出问题 查询每个员工 `sal` 和 `comm` 的和: ``` select ename as 姓名,sal as 薪资,comm 奖金,sal+comm 月薪小计 from emp ``` 执行结果: 当 `comm` 为 `null` 时,其和也是 `null` ### 分析 任何值与 `null` 做算术运算,结果都是 `null` ### 解决 遇到上面这种情况,要对 `NULL` 做处理 # ifnull() 介绍 当列的值时 `NULL` 时,返回默认值,否则返回原值。 ``` IFNULL(列名,默认值) ``` # 解决上面问题 查询各员工的月薪,sql修改如下: ``` select ename as 姓名,sal as 薪资,IFNULL(comm,0) 奖金,sal+IFNULL(comm,0) 月薪小计 from emp ``` 结果如下: [](http://www.malaoshi.top/upload/0/0/1EF33N5yjZPa.png) 原文出处:http://malaoshi.top/show_1IXlTQ9mVLZ.html