点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
我想在HANA中的标量值函数(hdbscalarfunction)中执行类似的操作,以获取关键指标相对于特定特征的平均值:
功能" JPCHURN"。" ml.jpchurn.functions :: getAveFeature"(in_clsID Integer,in_featureName nvarchar(256)) 返回ex_aveValue的两倍 语言SQLSCRIPT SQL安全调用者 开始 /********************************* 编写函数逻辑 ********************************/ 声明lv_String nvarchar(256); lv_String ='a。' || :in_featureName; 选择(:lv_String)到ex_aveValue 来自" JPCHURN"。" ml.jpchurn.data::jpChurn.tab_DataRaw"为 内部联接" JPCHURN"。" CustChurnAPLModelsvClust_01_resultTrain"为b 在a。"帐户ID" = b。"帐户ID"上 其中b.closest_cluster_1 =:in_clsID;
但是,实际上包含字段名称的:lv_string的动态选择不起作用。 我可以使用if-else分支作为解决方法,然后手动输入字段名称。 但是,除了这之外,只有伪动态函数,我有〜25个可以更改的字段。
有什么想法要实现吗? 此外,标量值函数中不允许使用动态SQL。
感谢+问候,Ingo
您可以在HANA Procedure对象中使用动态SQL。 请参考下面的链接以参考示例:
https://help.sap.com/查看器/de2486ee947e43e684d39702027f8a94/2.0.02/zh-CN/093c4fd307064f838cb582555c187b9e.html
Hi Ingo,
在标量值函数中,不可能使用动态SQL。 您可以开发HANA过程来执行动态SQL语句。
致谢
基达尔
一周热门 更多>