数据集: select a.recordtime, a.name,a.denfiniton ,sum(recordvalue)over (partition by a.name) from dauldata 如下图设置了a.recordtime(时间参数) 但是帆软报表中的SUM值未按照时间的改变而改变。 但是在数据集中加入具体时间范围SUM值会变化。求解
在over 里面 加一个 order by a.recordtime
select a.recordtime, a.name,a.denfiniton ,sum(recordvalue)over (partition by a.name order by a.recordtime) from dauldata
这三者的执行顺序为 where条件-->sum(c) over(partition by d)-->报表过滤
所以在where条件过滤sum的值会变化,在报表过滤就不会
如果一定要使用过滤,就不要在sql里面sum,而是在单元格使用汇总求和