sql语句中聚合函数使用的问题
诸位:
我用以下语句,搜寻“余额”>0的数据老出错,帮帮忙呗。问题出在where子句上,不用where子句通过。
select sum(金额) as 余额 from bzj where 余额> 0
[解决办法]
哦,是我rp有问题,没看清楚,不好意思哈 :(
这句查询结果,只有一笔数据,如果结果>0,本身就是这笔数据,若<0,就没结果了,如下面:
select * from (select sum(金额) as 余额 from bzj) as t where 余额>0
所以再过滤就没有意义了,直接在前台使用就行了
[解决办法]
分组应该这样:
select id,sum(金额) as 余额 from bzj group by id having sum(金额)>0
[解决办法]