SAP HANA - 计算视图


计算视图用于使用其他分析、属性和其他计算视图以及基本列表。它们用于执行复杂的计算,这是其他类型的视图不可能实现的。

计算视图的特点

下面给出了计算视图的一些特征 -

  • 计算视图用于使用分析、属性和其他计算视图。

  • 它们用于执行复杂的计算,这是其他视图无法实现的。

  • 有两种方法可以创建计算视图 - SQL 编辑器或图形编辑器。

  • 内置联合、连接、投影和聚合节点。

如何创建计算视图?

选择要在其下创建计算视图的包名称。右键单击包 → 转到新建 → 计算视图。当您单击计算视图时,将打开新窗口。

创建计算视图

输入视图名称、描述,然后选择视图类型为计算视图、子类型标准或时间(这是添加时间维度的特殊视图)。您可以使用两种类型的计算视图 - 图形和 SQL 脚本。

图形计算视图

它有默认的节点,如聚合、投影、连接和联合。它用于使用其他属性、分析和其他计算视图。

基于 SQL 脚本的计算视图

它是用基于 SQL 命令或 HANA 定义的函数构建的 SQL 脚本编写的。

数据类别

Cube,在这个默认节点中,就是Aggregation。您可以选择星形连接与立方体维度。

维度,在此默认节点中是投影。

数据类别

带星型连接的计算视图

它不允许在数据基础上添加基本列表、属性视图或分析视图。所有维度表必须更改为维度计算视图才能在星型连接中使用。可以添加所有事实表,并且可以使用计算视图中的默认节点。

例子

以下示例显示了如何将计算视图与星型连接一起使用 -

您有四个表、两个 Dim 表和两个 Fact 表。您必须找到所有员工的列表及其加入日期、员工姓名、员工 ID、工资和奖金。

将以下脚本复制并粘贴到 SQL 编辑器中并执行。

昏暗表 - Empdim 和 Empdate

Create column table Empdim (empId nvarchar(3),Empname nvarchar(100));
Insert into Empdim values('AA1','John');
Insert into Empdim values('BB1','Anand');
Insert into Empdim values('CC1','Jason');
Create column table Empdate (caldate date, CALMONTH nvarchar(4) ,CALYEAR nvarchar(4));
Insert into Empdate values('20100101','04','2010');
Insert into Empdate values('20110101','05','2011');
Insert into Empdate values('20120101','06','2012');

事实表 - Empfact1、Empfact2

Create column table Empfact1 (empId nvarchar(3), Empdate date, Sal integer );
Insert into Empfact1 values('AA1','20100101',5000);
Insert into Empfact1 values('BB1','20110101',10000);
Insert into Empfact1 values('CC1','20120101',12000);

Create column table Empfact2 (empId nvarchar(3), deptName nvarchar(20), Bonus integer );
Insert into Empfact2 values ('AA1','SAP', 2000);
Insert into Empfact2 values ('BB1','Oracle', 2500);
Insert into Empfact2 values ('CC1','JAVA', 1500);

现在我们必须使用星型连接来实现计算视图。首先将两个 Dim 表更改为 Dimension Calculation View。

使用星形连接创建计算视图。在图形窗格中,为 2 个事实表添加 2 个投影。将两个事实表添加到两个投影,并将这些投影的属性添加到输出窗格。

明星加盟

从默认节点添加联接并联接两个事实表。将事实连接的参数添加到输出窗格。

输出面板

在星形连接中,添加维度计算视图并将事实连接添加到星形连接,如下所示。在输出窗格中选择参数并激活视图。

活动视图

SAP HANA 计算视图 - 星形连接

成功激活视图后,右键单击视图名称,然后单击数据预览。将属性和度量添加到值和标签轴并进行分析。

使用星加入的好处

它简化了设计过程。您无需创建分析视图和属性视图,直接将事实表用作投影。

通过 Star Join 可以实现 3NF。

没有星型连接的计算视图

在 2 个 Dim 表上创建 2 个属性视图 - 添加输出并激活这两个视图。

在事实表上创建 2 个分析视图 → 在分析视图的数据基础中添加属性视图和 Fact1/Fact2。

现在创建一个计算视图→尺寸(投影)。创建两个分析视图的投影并连接它们。将此连接的属性添加到输出窗格。现在加入投影并再次添加输出。

激活查看成功,进入数据预览进行分析。

无明星加盟