组合数据集

最近更新时间:2019-07-24 15:22:15

组合数据集提供了一个强大却又简单的方式,通过简单的拖拽操作,实现多个查询,多张表或视图联接(JOIN)或联合(UNION)在一起。这些查询、表、视图均可以来自于不同的数据源。

创建组合数据集

  1. 输入用户名和密码后登录到主页面。
  2. 单击创建数据集后,进入到创建数据集的界面。
  3. 用户在数据集模块中,单击工具条上的【新建】,选择组合数据集,即可打开组合数据集界面。

    组合数据集可以直接从左边的数据集资源树上拖拽一个数据集到组合数据集编辑区域;也可以拖拽数据源里的表或视图到组合数据集编辑区域把数据集、表、视图拖拽到组合数据集里后,在这个文档里,统一叫“表”。

添加数据集

从左边资源树上拖拽一个数据集得到组合数据集编辑区域。任何类型的数据集都可以被添加进来。一个组合数据集里不能仅仅只有一张表,这张表来自于数据集。

添加数据库中的表或视图

展开数据源的表和视图节点,拖拽一张表或一个视图到组合数据集编辑区域。一个组合数据集里可以仅仅只有一张表,这张表来自于表或视图。

添加区域

如果将表插入到一个空白的组合数据集里,可以通过 DND 的方式将这张表放入组合数据集编辑区域的左上角。
如果组合数据集编辑区域里已经有别的表,可以将新加的表放到:

  • 第一张表之前
  • 两张表之中
  • 最后一张表之后
  • 已存在的表上
  • 其它空白区域如果添加到已存在的表上,新添加的表会替换老的表。

如果添加到其它空白区域,新添加的表会插入到最后一张表之后。下图为添加到两张表之中的截图,用蓝色粗线提示此区域可以插入:

拖拽数据库中的表,如果两个表之间定义了外连接信息,当两个表拖入组合数据集之后,可以基于这些外连接信息将缺省的连接做好,而无需用户指定。
单击表与表之间连接线上的图标,即可以打开“操作类型”窗口,来定义两张表之间的联接关系。
两张表之间的关系图:

关系 图标
内部联接 img
左侧联接 img
右侧联接 img
外部联接 img
联合 img
无效连接 img

联接

联接类型:
内部联接(Inner Join):将左右两张表符合联接条件的记录组合在一起。
左侧联接 (Left Join):左表的记录全部显示,右表只会显示符合联接条件的记录,右表中记录条件不足的地方补空。
右侧联接 (Right Join):右表的记录全部显示,左表只会显示符合联接条件的记录,左表中记录不足的地方补空。
外部联接 (Outer Join):左右表的记录都全部显示,左表不符合联接条件的记录对应的右表位置补空,右表不符合条件的记录对应左表位置补空。

联接条件:
在“操作类型”窗口里,单击【添加新的联接列】来定义联接左右两张表的条件。从左右表中选择数据类型匹配的列作为连接条件列。两张表之间可以定义多个条件。

无效联接:当没有定义两张表的联接条件,或联接条件无效时,这种联接关系就是一种无效的联接。

联合

联合(Union All):将两张表的数据(包括重复数据行)拼接在一起,左表数据在上,右表数据在下,联合后的表列名为左表的列名。
无效联合:联合的两张表,表的列数必须相同,对应列的数据类型必须匹配,如果不满足上述两个条件,这种联合便是一种无效联合。

新插入的表,默认会找插入点的上一张表来产生连接。如果不存在上一张表,会找插入点的下一张表产生连接。也可以拖动连接线,来重新选择连接的左右两张表。
移动鼠标到连接线上,当鼠标变为可移动状态时,上 / 下拖动它到另一张表上。

当连接线变为绿色时,即可释放鼠标。如下图:

组合数据集上,任何一张都必须与任意一张别的表产生关系,所有连接线的个数为(表的个数-1)。当拖拽连接线导致某张表和别的表没有关系时,连接线的颜色会显示为红色,示意非法拖动连接线。

移动表

选择表的表头部分,拖动表到新的位置,可以插入到另一个表之前,或附加到另一个表之后,也可以移动到另一个表上替换这个表。

编辑表

组合数据集里的表,可以定义过滤器,隐藏列,改变列顺序,改变表的尺寸。
定义过滤器:单击表头上的过滤器按钮,打开过滤器窗口,定义过滤。
隐藏列:单击列名前的小图标来显示 / 隐藏列。在表头上的图标显示 / 隐藏所有列。
改变列顺序:拖动列到另一列的前面或后面来改变列的顺序。隐藏列总是排在最后的位置。
改变表的尺寸:拖拽表的底部边线改变这一个表的高度;拖拽表的右边线,改变在同一列上的所有表的宽度。

删除表

单击表头上的【删除数据集】即可删除表。

展示 SQL 语句

可以单击组合数据集编辑区域下方的【展示 SQL 语句】,来查看这个组合数据集生成的 SQL 语句。

性能检测

用户使用组合数据集时,系统会对数据集性能进行实时检测,并对影响性能的地方做出橙色标识,告知用户哪些操作没有下推到数据库执行:

和 SQL 数据集一样,在组合数据集上,用户也可以通过单击【检测性能】,查看所有性能问题。性能报告将影响 SQL 性能的地方通过弹出框展示。展示结果的顺序为:优先显示结果数据集无法下推至数据库的原因,其次为子节点的性能问题,且子节点的展示排序是随机的,如节点销售量和节点销售量1的顺序。

数据治理

创建数据集之后,刷新元数据,可对元数据进行一系列数据清洗、治理操作:转换为数字列(企业版)、转换为日期列(企业版)、转换为维度列、转换为度量列、设置文件夹(企业版)、设置数据层次(企业版)、设置日期层次(企业版)、设置数据范围(企业版)、设置表达式(企业版)、设置日期表达式、为字段设置别名、设置数据权限(企业版)。

数据治理详细操作请参见 数据治理 文档。