当前位置:主页 > 轻量服务器 >

数据库服务器_消息队列面试题_限时特惠

SAP HANA SQLScript

SQLScript是结构化查询语言(SQL)扩展的集合。扩展是:

过程

过程允许您描述作为输入和数据库表传递的数据的一系列数据转换。通过调用其他过程,可以将数据转换实现为遵循SAP HANA数据库SQL语法的查询。只读程序只能调用其他只读程序。

程序的使用与使用SQL相比有一些优点:

如何创建程序

有两种创建程序的方法:

SAP HANA程序使用Modeler透视

它是新瓶装旧酒

先决条件

在创建HANA程序之前做出决定确保您已经创建了所有将在这里使用的表。

让我们做一个场景

我们有3个表…

要求是找出不同地区的销售值。还需要根据折扣计算销售金额,作为输入参数。因此,让我们通过以下步骤创建一个HANA过程来实现此要求……

-创建产品表create colunm表"SAP\u HANA\u TUTORIAL"。"Product"("Product\u ID"INTEGER,"Product\u NAME"VARCHAR(100),primary key("Product\u ID");插入"SAP\u HANA\u TUTORIAL"。"Product"VALUE(1,'Shirts');插入"SAP\u HANA\u TUTORIAL"。"PRODUCT"值(2,'外套');插入"SAP\u HANA\u TUTORIAL"。"PRODUCT"值(3,'裤子');插入"SAP\u HANA\u TUTORIAL"。"PRODUCT"值(4,'外套');插入"SAP\u HANA\u TUTORIAL"。"PRODUCT"值(5,'钱包');

-创建区域表Create colunm table"SAP\u HANA\u TUTORIAL"。"Region"("Region\u ID"INTEGER,"Region\u NAME"VARCHAR(100),"SUB\u Region\u NAME"VARCHAR(100),主键("Region\u ID");插入"SAP\u HANA\u TUTORIAL"。"Region"值(100,'美洲','北美');插入"SAP_HANA_TUTORIAL"。"REGION"值(200,'美洲','南美洲');插入"SAP_HANA_TUTORIAL"。"REGION"值(300,'亚洲',红淘客,'印度');插入"SAP_HANA_TUTORIAL"。"REGION"值(400,'亚洲','日本');插入"SAP_HANA_TUTORIAL"。"REGION"值(500,'欧洲','德国');

-创建销售表Create column表"SAP\u HANA\u TUTORIAL"。"Sales"("REGION\u ID"INTEGER,"PRODUCT\u ID"INTEGER,"Sales\u AMOUNT"DOUBLE,主键("REGION\u ID","PRODUCT\u ID"));插入"SAP\u HANA\u TUTORIAL"。"Sales"值(100,1100);插入"SAP\u HANA\u TUTORIAL"。"Sales"值(100,2,90);插入插入"SAP\u HANA\u TUTORIAL"。"SALES"值(100,5,85);插入"SAP\u HANA\u TUTORIAL"。"SALES"值(200,2,80′);插入"SAP\u HANA\u TUTORIAL"。"SALES"值(200,1,75);插入"SAP\u HANA\u TUTORIAL"。"SALES"值(300,3,85);插入"SAP\u HANA\u TUTORIAL"。"SALES"值(400,4,75);插入"SAP\u HANA\u TUTORIAL"。"SALES"值(500,1,65);插入"SAP_HANA_TUTORIAL"。"SALES"值(500,2,65);

d。执行上述代码后,云赚,将创建3个表,其中包含数据。要查看,怎么成为淘客,请右键单击schema并刷新

e.使用SQL控制台中的以下直接SQL代码将schema SELECT权限授予|SYS|REPO用户

将schema SAP|HANA|教程上的SELECT授予"|SYS|REPO"。

2。Create Procedure

BEGINVAR1=从架构中选择T1.地区\名称,T1.子地区\名称,T2.产品\标识,T2.销售\金额_名称.地区AS T1内部联接架构_名称.销售由于T1.REGION\u ID=T2.REGION\u ID;

VAR2=选择T1.REGION\u NAME,T1.SUB\u REGION\u NAME,T1.PRODUCT\u ID,T1.SALES\u AMOUNT,特价云服务器,T2.产品名称来自:VAR1 AS T1 INNER JOIN SCHEMA_名称.产品T1上的T2.PRODUCT\ ID=T2.PRODUCT\ ID;

OUTPUT\ TABLE=选择SUM(SALES\ U AMOUNT)作为SALES\ U AMOUNT,SUM(SALES\ U AMOUNT–(SALES\ U AMOUNT*:折扣/100))作为NET\ U AMOUNT,PRODUCT\ U NAME,游戏返利平台,REGION\ U NAME,子区域名称来源:VAR2按产品名称、区域名称、子区域名称分组;结束;

d.找到页面右侧的输出窗格,单击"输出参数",然后选择新建。创建如下所示的输出参数。

e.在输入窗格中,单击"输入参数",选择新的标量参数并创建为折扣。

f.通过单击右上角的活动按钮激活。该过程将被激活,并看到日志中的消息Completed Successfully.

g.该过程的运行时对象可以在|SYS|BIC schema.中看到|h.使用SQL控制台中的Call语句调用该过程,下面的命令

Call"|SYS|BIC."SAP-HANA-TUTORIAL/procedure|SalesReport"(100,NULL);

我们现在已经完成我希望它能帮助你。非常感谢…干杯!

Ajay Kumar

Ajay,

我们不建议在SP05之后使用modeler透视图来创建过程。自SP05之后,我们建议使用SQLScript编辑器和调试器,使用SAP HANA开发透视图来创建过程。我们还建议在基于Web的开发工作台(SP09)中也使用编辑器/调试器来处理过程。本教程基本上展示了我们在SP04和之前创建过程所使用的"旧"方法。

干杯,

Rich Heilman

SAP HANA产品管理

您真的应该在SPS10 Rich中反对这种方式

目前有一些限制因素阻止了对.procedure文件类型的反对。

干杯,

Rich Heilman

Ajay,

这些信息对初学者非常有用。感谢分享。

猜你喜欢

微信公众号