enumGroup函数

来源:互联网 发布:anaconda与python版本 编辑:程序博客网 时间:2024/06/14 23:09


         在实际业务场景中,我们经常会碰到枚举分组,对于润乾报表来说我们做这样的分组有多种方式,但就从效率的角度来讲我们还是建议使用enumGroup函数来做分组,下面看一下下面的对比

请看如下报表:

1.jpg

这是一个不规则分组的报表,将饮料和点心归入副食品组,肉/家禽和海鲜归入肉类组,日用品归入日用品组,其他所有类别归入其他组。设计这样的一个报表有多种做法,下面我们列出比较典型的两种:

第一种做法:

2.jpg

第二种做法:

3.jpg

分析:

第一种做法是比较常规的做法,首先在第一列中根据分组要求,枚举出三个组,然后分别在第二列、第三列、第四列里对数据进行汇总时,根据分组条件增加过滤条件,如类别ID==1 or类别ID==3等等,一般的传统报表工具都是这种做法。

这种做法的弊端在于:引擎对每一个汇总项进行计算时,都需要对数据进行一次遍历,查找出满足条件的记录进行汇总,因此计算速度很慢。

第二种做法采用了enumgroup函数,这种做法是对按照枚举分组规则数据集先进行分组,之后在第二列、第三列、第四列里对数据进行汇总时直接从当前组里取数,不再需要遍历和过滤了。因此第二种做法速度非常快,性能比较优。

0 0
原创粉丝点击