mysql中null值在表达式计算时的影响

发布于 2013-08-10 来源 原文链接

更新于 2015-11-26

mysql中 当任意类型字段和null值进行计算时得到的结果依然为null 值

例如  1+ null =null  

'a'+null =null

有时候需要自动转换null值为整型来进行表达式计算.
尝试使用CONVERT 和 CAST 函数 强行转换 null值为整型 ..失败.

最后无奈还是使用了 if 语句来解决这个问题

例子如下:  if (a is null,b,b+a) as c   意思为 当  a字段为null值时,只计算b字段的值 取别名为c  否则 取 b字段和a字段的值相加 取别名为c
a        b
null     1

1       1

select if (a is null,b,b+a) as c from table
最后得到结果为
c
1
2