报表性能优化方案之巧用相邻连续分组

时间:2022-11-07 05:56:15

1. 问题描述

在数据显示方式章节内容中,我们已介绍分组的两个不同使用场景:普通分组和相邻连续分组。但其使用相邻连续分组功能,更主要原因是能够提高其报表的性能。

示例报表开发工具:FineReport

2. 原理

相邻连续分组的操作,是将数据集中连在一起的相同数据才进行合并的。尤其是,在配合SQL中已排好序的列,对其实现的分组时,使用此分组方式其性能比普通分组快些。如下简单示例,查看其报表执行数据信息,可看出其分组方式比普通分组方式更能提高其报表的性能。

3. 实现步骤

3.1 新建报表

3.2 表样设计

设计好报表的基本框架,如下:

 

3.3 新建数据集


报表性能优化方案之巧用相邻连续分组
 

新建数据集名为ds1,对应的SQL语句:SELECT Classno,StudentNO,Name,Sex,Course,Grade FROM STSCORE order by Grade,Classno ASC

3.4 绑定数据列

如下将数据集的字段拖入对应的单元格内:

 


报表性能优化方案之巧用相邻连续分组
 3.5 分别设置分组

设置为普通分组情况:

将A2单元格设置为普通分组,预览报表并查看日志,报表执行的数据信息如下:

 


报表性能优化方案之巧用相邻连续分组
 设置为相邻连续分组情况:

将A2单元格设置为相邻连续分组,同样再预览报表,查看日志信息,报表执行的数据信息如下:


报表性能优化方案之巧用相邻连续分组