mysql中null的处理

mysql中null的处理

mysql sum字段包括有nul则自动忽略
mysql 多个字段相加如果值有null则值等于null
可以用ifnull和COALESCE处理

SELECT IFNULL(amount, 0)
SELECT COALESCE(amount, 0)

IFNULL()如果第一个参数为 NULL,返回第二个参数
COALESCE()返回第一个非 NULL 的参数

 

$var = null;
echo $var + 5; // 输出 5,因为 null 在算术运算时会被当作 0 处理

SELECT SUM(COALESCE(salary, 0)) FROM employees;
SELECT SUM(salary) FROM employees; //NULL 被忽略

默认情况下,MySQL 中的加法运算,如果其中一个操作数是 NULL,则结果为 NULL。
如果你希望将 NULL 视为 0 来进行加法运算,可以使用 COALESCE() 或 IFNULL() 函数来替换 NULL 为 0
SELECT COALESCE(a, 0) + COALESCE(b, 0) AS result FROM employees;
SELECT IFNULL(a, 0) + IFNULL(b, 0) AS result FROM employees;

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: