|
|
导航: |
论坛 -> 数据库专区
斑竹:liumazi,waterstone |
|
作者: |
|
2023/3/8 11:39:48 |
标题: |
fastreport的AVG函数结果不准 |
浏览:801 |
|
加入我的收藏 |
楼主: |
刚发现的问题,假设有一个字段“field65”,现在有个很简单的需求,计算这一列的平均值,在用fastreport的时候,只需要新建一个memo,然后把他的表达式写成: [AVG(<frxDBDataset1."field65">,MasterData1)],就行了。
但是现在我发现,这个由报表计算出来的平均值,和我直接用SQL语句计算得到的平均值不一样。。。
毫无疑问,sql语句得到的值是正确的,我在想为什么会出现这个问题,最大的原因就是我在fastreport的MasterData中使用了一个memo来展示field65,然后我把格式设置成了保留两位小数,可能就是因为这个原因,是不是fastreport在计算AVG的时候,也只计算了保留两位小数的数据。。
有什么办法来解决这个事情呢。。。
此帖子包含附件:
大小:7.6K |
----------------------------------------------
C++ builder 用户前来摸鱼。。。 |
作者: |
|
2023/3/8 11:48:01 |
1楼: |
我奇怪的就是,在MasterData中使用了一个memo来展示field65,其格式也设置成了保留两位小数,但这个不是“格式”吗?真实的数据不止两位小数啊。
从现在的结果来看,fastreport在计算AVG函数的时候,应该是按保留的两位小数计算的,这也就是为什么我用sql计算出来的AVG和报表函数AVG,会有差异的原因了,相差0.2-0.3,这个差别很大了
此帖子包含附件:
大小:10.5K |
----------------------------------------------
C++ builder 用户前来摸鱼。。。
|
作者: |
vmao (毛小毛) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2023/3/16 17:25:00 |
2楼: |
用sum函数,再除以数量试试。AVG可能四舍五入老外的理解和中国人有差异。
----------------------------------------------
-
|
|