1. 概述
1.1 版本
FineBI 版本 | 功能变动 |
---|---|
5.1 | - |
5.1.5 |
|
1.2 问题描述
由于原始表数据量过大,有时可能会导致内存或磁盘占满的情况,因此通常需要使用 where 语句,加过滤条件来控制数据量。而 where 语句后面加上固定的数值会使得取数不灵活,此时可以使用参数动态控制 BI 取数的数据量,例如取动态时间段内的全部数据。
例如在「日期区间」过滤组件中选择 2015 年的数据,此时数据表中显示 2015 年的数据,如下图所示:
1.3 实现思路
1)添加 SQL 数据集,并在 SQL 语句中配置两个参数:开始时间与结束时间。
2)仪表板中使用「日期区间过滤组件」绑定参数,过滤出 2015 年全年数据。
2. 操作步骤
示例数据:内置 DEMO 下的「互联网_访问统计表」
2.1 添加 SQL 数据集
1)若同时拥有「实时数据」和「抽取数据」功能,则需要在数据列表中切换为「实时数据」,然后选择「数据准备」,点击进入分组下业务包,点击「添加表>添加 SQL 数据集」,如下图所示:
注:只有 数据处理用户 可以创建 SQL 数据集。
2)将数据集命名为「互联网访问数据统计」,选择数据连接,输入带参数的 SQL 语句,select*from 互联网_访问统计表 where 统计日期 between '${start_time}' and '${end_time}',点击刷新,选择参数类型为「日期」并选择默认值,点击「确定」。如下图所示:
注1:示例为日期区间过滤组件 SQL 写法,其他日期类型 SQL 参数写法详情参见:SQL 数据集参数写法示例 。
注2:默认值可任意选择,选择默认为空,即选择全部。
2.2 创建仪表板
新建仪表板,使用「互联网访问数据统计」,添加一个分组表,如下图所示:
2.3 过滤组件绑定参数
添加「日期区间」过滤组件,编辑日期区间过滤组件,选择绑定参数,并点击设置按钮选中参数,其中选择参数可进行模糊搜索,如下图所示:
2.4 效果查看
详情参见本文 1.2 节。