应用场景
我们想从大量的数据当中,获取到符合条件的数据,例如在网格式报表中,仅展示运货费大于500的记录,如下图所示:
实现思路
方案一:在数据集中过滤
SQL检索数据集可通过条件检索设置实现,如下图:
复杂SQL数据集则可直接通过 SQL 语句取出满足条件的的数据,如数据集 SQL 语句为:SELECT * FROM demo_orders where 运货费 > 500。
方案二:表达式过滤
表达式过滤是通过对select函数(group函数)增加条件来实现列表数据的数据过滤,语法:数据集名称.select(查询字段,升降序,过滤表达式,排序表达式)。本节详细介绍该方案的用法。
示例
1.打开报表
在 资源中心 界面将“运货信息表5”【另存为】“运货信息表7”,点【修改】打开报表。
2.设置过滤
双击A2单元格,打开表达式设置页面,修改A2单元格表达式为:=运货信息.Select(订单ID,,运货费>500)
该表达式的结果是数据集运货信息中字段”订单ID”对应的运货费大于500的所有值,从而使得报表展现时仅返回数据集中运货费大于500的数据进行列表。
注意:表达式中取数字段“订单ID”和过滤“运货费>500”之间有两个逗号,因为不需要排序,第二个参数为空,但需要使用 , 占位。
3.效果预览
点击设计界面左上角的预览按钮对报表模板进行查看。预览效果如下图: