应用场景

我们想从大量的数据当中,获取到符合条件的数据,例如在网格式报表中,仅展示运货费大于500的记录,如下图所示:

结果集筛选 - 图1

实现思路

方案一:在数据集中过滤

SQL检索数据集可通过条件检索设置实现,如下图: 结果集筛选 - 图2

复杂SQL数据集则可直接通过 SQL 语句取出满足条件的的数据,如数据集 SQL 语句为:SELECT * FROM demo_orders where 运货费 > 500。

方案二:表达式过滤

表达式过滤是通过对select函数(group函数)增加条件来实现列表数据的数据过滤,语法:数据集名称.select(查询字段,升降序,过滤表达式,排序表达式)。本节详细介绍该方案的用法。

示例

1.打开报表

在 资源中心 界面将“运货信息表5”【另存为】“运货信息表7”,点【修改】打开报表。

2.设置过滤

双击A2单元格,打开表达式设置页面,修改A2单元格表达式为:=运货信息.Select(订单ID,,运货费>500)

结果集筛选 - 图3

该表达式的结果是数据集运货信息中字段”订单ID”对应的运货费大于500的所有值,从而使得报表展现时仅返回数据集中运货费大于500的数据进行列表。

注意:表达式中取数字段“订单ID”和过滤“运货费>500”之间有两个逗号,因为不需要排序,第二个参数为空,但需要使用 , 占位。

3.效果预览

点击设计界面左上角的预览按钮对报表模板进行查看。预览效果如下图: 结果集筛选 - 图4