查询时如何防止生成INNER JOIN?

2020-09-28 09:27发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我面临以下问题:在P...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我面临以下问题:在PostGreSQL DB的UDT中,我正在两个表(例如A.column1 = B.column1)之间创建经典的等联接,当我使用LaunchPad查询时,它将转换联接 在"内部联接"中。

如何避免这种转变?

感谢您的帮助。

4条回答
hengyuye
2020-09-28 09:59

你好,

我们当前正在使用SAP BusinessObjects BI 4.2 Support Pack 3 Patch 2。

此外,是的,在连接的翻译中似乎出现了"问题"。

自上次回答以来,我试图修改UDT或postgresql.prm文件中的参数,例如" ANSI_92"," OUTERJOINS_GENERATION"," FILTER_IN_FROM"等,但不幸的是没有任何更改。

让我尝试用一​​个简单的例子再次说明:)

在UDT中,我想在一个字段上连接两个表(so.w_agtpai_h_bo和rh.prefon)。 否则,表so.w_agtpai_h_bo在字段" cod_coll"上具有一个auto_join。 所以我有两个不同的联接:

数字1:so.w_agtpai_h_bo.paie_h_num_prefon = rh.prefon.num_classe

数字2:@Prompt(...)中的so.w_agtpai_h_bo.cod_coll

在BI LaunchPad中生成的查询如下:

SELECT
*
FROM
so.w_agtpai_h_bo左外连接rh.prefon ON(so.w_agtpai_h_bo.paie_h_num_prefon = rh.prefon.num_classe和so.w_agtpai_h_bo.cod_coll in)(17)

如您所见,第二个联接包含在LEFT OUTER JOIN中,而UDT则不是这种情况! 结果是我的请求没有对值" 17001"的字段" cod_coll"进行过滤,因为它处于WHERE条件(或至少在OTUER JOIN之外)。

再次感谢您的帮助。

一周热门 更多>