解决SUM函数返回为NULL
SUM函数的作用:计算某一字段中所有行的数值和, 使用SUM函数进行对符合条件的结果行数进行求和。
问题产生:
sum 求和时会对 null 进行过滤,不计算,但如果没有返回结果,则sum 函数的返回值为 null,不是 0:
解决方式:
1. IFNULL
使用IFNULL函数进行查询,判断第一个参数是否为null,如果是 则返回结果为第二个参数(数值自定义):select IFNULL(SUM(number),0)
2. COALESCE
使用 COALESCE函数,COALESCE()函数可以接收多个参数,并返回第一个非 NULL的参数。如果所有参数都为 NULL,则 COALESCE() 函数返回 NULL。select COALESCE(NULL,NULL,NULL,0)
此时返回0select COALESCE(SUM(number),0)
此时等同于 IFNULL文章来源:https://www.toymoban.com/news/detail-710674.html
3. CASE表达式
使用CASE表达式,CASE WHEN语法类似if..else进行校验判断select(CASE WHEN SUM(ad.times) IS NULL THEN 0 ELSE SUM(ad.times) END ) total
文章来源地址https://www.toymoban.com/news/detail-710674.html
到了这里,关于解决SUM函数返回为NULL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!