问题:使用sum求和,如果某一个值是null,结果也会变成null。
在sqlite中不能使用isnull(id,0)来进行判断,在sqlite中使用ifnull
select sum(orderPrice) from sales//得出的结果有可能是null
select sum(ifnull(orderPrice,0)) from sales //如果表中没有数据,结果依然可能是null
select case when sum(case when orderPrice is null then 0 else orderPrice end) is null then 0 else sum(case when orderPrice is null then 0 else orderPrice end) end from sales
//这样写太繁琐了
解决:
select ifnull(sum(ifnull(orderPrice,0)),0) from sales