云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

香港带宽_云服务器平台安装_返现

小七 141 0

简介–

数据库中提供了不同类型的连接。SAP HANA提供所有这些连接。

SAP HANA中不同类型的连接-

内部连接右外侧左外侧完全外部文本空间参照的世俗的动态

在这篇博文中,每日返利,我们将探讨HANA中的"动态连接"属性,以创建一个视图并基于不同属性显示收入数据。

定义–

当连接定义为动态时,然后,建模者根据动态联接请求的列动态定义联接条件列,以改进联接执行过程,并帮助减少在运行时联接节点进程的记录数。动态连接减少了连接视图节点在运行时处理的记录数,这有助于改进连接执行过程。

动态连接与静态连接

业务场景

我们在HANA拥有全球系统,其中我们有多个地区,如APAC、EMEA、LAO和NA。我们有一个要求,即我们必须生成一份报告,根据地区、公司和产品给出收入数字。但企业不希望为此创建多个HANA VDM。在下面的步骤中,我们将创建一个单独的VDM,在这里我们将使用动态连接来完成业务需求,即显示产品在整个地区的总收入和收入比率。

我们基本上对同一查询进行两种类型的报告。

1-基于地区的收入比率,产品和公司

2-仅基于产品和公司的收入比率

如果我们采用静态联接,则总收入不会显示正确的值。

下面的示例是我在当前任务中与HANA合作的部分经验。

源表-

在上面的示例公司C1、C2,C3和C3在EMEA地区拥有业务份额,物联网协议,但对于亚太地区,我们只有C1和C2公司的业务份额。

要在SAP HANA中实现这一点,我们需要创建一个计算视图,并在两个"聚合"节点中使用相同的表。创建第一个聚合节点如下:

步骤-

1.让我们先创建存储收入数据的源表-

创建表"收入市场"("地区"VARCHAR(10),淘客单,"产品"VARCHAR(15),"公司"VARCHAR(10),"销售"INT);

2。现在,让我们创建一个计算视图。在这个计算视图中,我们将使用刚刚在两个不同聚合节点中创建的同一个表。

i.在第一个聚合节点中,我使用该表并使用该列获取基于地区、产品和公司的收入详细信息。

二、在第二个聚合节点,我使用表和列根据区域内的产品和公司获取收入详细信息。

第一个聚合节点–

3.我们希望按公司列出总收入,因此在第二个聚合节点上,我们采用相同的表,但不会启用"公司",因为我们希望按公司列出总收入。在添加来自此节点的聚合度量收入时,将其重命名为毛收入。

4.现在我们使用"区域"和"产品"的内部连接来连接这两个聚合节点,并需要导出收入比率。因此,我们创建了计算列"收入比率"

公式-收入比率=收入/总收入

面临的问题-

现在,当我们进行数据预览-

我们将源表数据与HANA数据进行协调。当我们检查某个地区某个产品的总收入时,我们发现它的值是正确的。

当我们检查一个公司所有地区的收入比率时,问题就出现了。我们希望显示亚太地区和欧洲、中东和非洲地区的总收入。

由于C3公司在亚太地区没有业务份额,C3公司的总收入将仅用于欧洲、中东和非洲地区。

因此所需的产出没有反映出我们希望计算整个地区(亚太地区和欧洲、中东和非洲地区)的总收入。

解决方案–

以实现所需的结果,淘客返利app,我们需要在两个聚合节点之间启用动态连接。动态连接出现在我们在输出中选择的字段的图片中。由于我们在查询中没有选择"REGION",所以HANA不会对"REGION"执行联接,淘客源码,这使得所有公司的总收入保持"恒定"。

如果我们在报表输出中取所有字段,可以看到我们得到的数据与静态联接相同。(正确)。

现在我们将区域从查询输出中排除-

这样通过使用"动态连接"就可以得到所需的结果。现在我们可以报告整个地区的总收入,例如(亚太地区和欧洲、中东和非洲地区)

结论-

从上述示例中,我们使用动态联合实现了对整个地区特定产品收入数据的正确报告。