急!三年前的贴子,碰到了....请高手解决....[在数据窗口中,分组求和后,怎么再把这些和加起来?急,请大家多多帮忙!]
作者:未知 来源:网络 更新时间:2018/4/16
转载三年前的帖子,请高手解决
==================================================================================
主 题: 在数据窗口中,分组求和后,怎么再把这些和加起来?急,请大家多多帮忙!
作 者: neveramo (算了吧)
等 级:
信 誉 值: 100
所属论坛: PowerBuilder 基础类
问题点数: 0
回复次数: 29
发表时间: 2002-04-09 11:37:23Z
===================================================================================
因为数据是四位小数点,分组求和后是两位,最后的求和是要把两位小数点的分组和相加。请大家赐教!
===================================================================================
(1) 19.52
1. 1.5025
2. 15.2509
3. 2.7663
(2) 39.58
1. 20.5698
2. 5.9658
3. 10.2658
4. 2.7791
要得出 19.52 + 39.58 = 59.10 (四舍五入,保留两位)
实际数合计: 59.1002
====================================================================================
希望用dw解决...请高手解决....
------华软网友回答------
1.直接用sum(字段 for all) 不行吗?
2.sum(compute_1) 应该也行吧.compute_1就是你的求和的计算列
------华软网友回复------
如果用sum(字段 for all) 得出的结果为 59.1002
sum(compute_1) 得出的结果为 59.1002
这样与四舍五入分组相加有差值.
原文如下....
http://search.csdn.net/Expert/topic/633/633074.xml?temp=.587948
------华软网友回复------
早上好..各位..自己先顶一下...
------华软网友回复------
再接再历...顶一下...
------华软网友回复------
round(sum(字段), 2) 或 round(sum(compute_1), 2)
这样应该行了吧
想问一下,你的19.52的分组统计是怎样计算出来的,可以贴出公式出来吗?
------华软网友回复------
19.52 是用round(sum(字段 for group 1), 2)
------华软网友回复------
按组计算完再保留2位数...,而后,计算所有的保留2位数的数据...
------华软网友回复------
round(sum(字段), 2) 或 round(sum(compute_1), 2)为什么不行? 你测试过吗?
------华软网友回复------
楼主的这个需求我觉得怪怪的,为什么只能统计分组的和,这样的话出来的误差有可能会比较大的.直接用 round(sum(字段), 2)出来的结果应该更加准确!
无论如何,如果再不行可以试试:
sum(dec( string(compute_1) ) ) 或 sum(dec( string(compute_1,'#########.00') ) )
------华软网友回复------
在分组中round(sum(字段 for group 1),2)
最后求和sum(compute_1 for all)
------华软网友回复------
可能老板这样会节约一点钱(少付出)! ^_^
------华软网友回复------
在分组中round(sum(字段 for group 1),2)
最后求和round(sum(compute_1 for all),2)
------华软网友回复------
同意 lzheng2001(1加1)
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。
==================================================================================
主 题: 在数据窗口中,分组求和后,怎么再把这些和加起来?急,请大家多多帮忙!
作 者: neveramo (算了吧)
等 级:
信 誉 值: 100
所属论坛: PowerBuilder 基础类
问题点数: 0
回复次数: 29
发表时间: 2002-04-09 11:37:23Z
===================================================================================
因为数据是四位小数点,分组求和后是两位,最后的求和是要把两位小数点的分组和相加。请大家赐教!
===================================================================================
(1) 19.52
1. 1.5025
2. 15.2509
3. 2.7663
(2) 39.58
1. 20.5698
2. 5.9658
3. 10.2658
4. 2.7791
要得出 19.52 + 39.58 = 59.10 (四舍五入,保留两位)
实际数合计: 59.1002
====================================================================================
希望用dw解决...请高手解决....
------华软网友回答------
1.直接用sum(字段 for all) 不行吗?
2.sum(compute_1) 应该也行吧.compute_1就是你的求和的计算列
------华软网友回复------
如果用sum(字段 for all) 得出的结果为 59.1002
sum(compute_1) 得出的结果为 59.1002
这样与四舍五入分组相加有差值.
原文如下....
http://search.csdn.net/Expert/topic/633/633074.xml?temp=.587948
------华软网友回复------
早上好..各位..自己先顶一下...
------华软网友回复------
再接再历...顶一下...
------华软网友回复------
round(sum(字段), 2) 或 round(sum(compute_1), 2)
这样应该行了吧
想问一下,你的19.52的分组统计是怎样计算出来的,可以贴出公式出来吗?
------华软网友回复------
19.52 是用round(sum(字段 for group 1), 2)
------华软网友回复------
按组计算完再保留2位数...,而后,计算所有的保留2位数的数据...
------华软网友回复------
round(sum(字段), 2) 或 round(sum(compute_1), 2)为什么不行? 你测试过吗?
------华软网友回复------
楼主的这个需求我觉得怪怪的,为什么只能统计分组的和,这样的话出来的误差有可能会比较大的.直接用 round(sum(字段), 2)出来的结果应该更加准确!
无论如何,如果再不行可以试试:
sum(dec( string(compute_1) ) ) 或 sum(dec( string(compute_1,'#########.00') ) )
------华软网友回复------
在分组中round(sum(字段 for group 1),2)
最后求和sum(compute_1 for all)
------华软网友回复------
可能老板这样会节约一点钱(少付出)! ^_^
------华软网友回复------
在分组中round(sum(字段 for group 1),2)
最后求和round(sum(compute_1 for all),2)
------华软网友回复------
同意 lzheng2001(1加1)
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。
- 上一篇文章: pb+sql server 如何不定期导出一部分数据库数据
- 下一篇文章: 如何在窗口内指定某一位置写字?