数据库SUM()为null解决方案

  • Post author:
  • Post category:其他




前言

使用数据库进行统计数量时,通常使用sum()函数将多条记录的值进行累加,但如果统计数量为0时,返回的是null,如下图,前端显示不是很友好,以下是针对mysql、oracle数据库处理此类问题的解决方案

在这里插入图片描述



Mysql数据库

mysql数据库使用 IFNULL(expr1,expr2) 函数,判断第一个表达式是否为NULL,如果为NULL则返回第二个参数的值,如果不为NULL则返回第一个参数的值,两个表达式可以为任意类型,如将下面第二个表达式0替换成字符 ‘a’,如果第一个表达式返回NULL,则整个sql返回字符a

select IFNULL(sum(num),0) from goods;


效果


在这里插入图片描述



Oracle数据库

mysql数据库使用 NVL(expr1,expr2) 函数,判断第一个表达式是否为NULL,如果为NULL则返回第二个参数的值,如果不为NULL则返回第一个参数的值,两个表达式可以为任意类型,如将下面第二个表达式0替换成字符 ‘a’,如果第一个表达式返回NULL,则整个sql返回字符a

select NVL(sum(num),0) from goods;



版权声明:本文为douzhenwen原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。