2020-08-17 12:51发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好
此"从LIPS中选择"表花费的时间太长,实际上在生产系统中以"超时"结束。
LIPS表只有大约140.000条记录。
内部tabla LT_AUX只有3条记录! 它不是空的...
我们正在使用以下关键字段进行访问:
我在SE16中进行了相同的选择,而且速度非常快。
我已经在质量体系中进行了ST05跟踪,请参阅以下内容:
为什么要进行这些嵌套循环? 谢谢。
嗨
此选项不用于所有条目(如您所要求的)。 使用Appending子句。
LOOP AT LT_AUX INTO WA_AUX。 SELECT LIPS〜VBELN LIPS〜POSNR LIKP〜LFDAT LIKP〜KUNNR LIPS〜LFIMG LIPS〜CHARG LIPS〜MATNR 表格LT_LIPS的对应字段 从LIPS内连接LIKP到LIKP〜VBELN上EQ LIPS〜VBELN LIPS〜VBELP EQ WA_AUX〜VBELN和 LIPS〜POSNR EQ WA_AUX〜POSNN和 LIKP〜AUTLF EQ ABAP_TRUE 结局。
由于您的lt_aux只有3条记录,因此应该可以更快地得到结果。
**这可能不是一个正确的解决方案,但是您可以尝试使用此方法并在ST05中查看性能 并决定。
致谢
Venkat
谢谢您的评论,桑德拉
我将尝试研究有关这些操作的更多信息。
生产中的LT_AUX只有3行。 这就是为什么我如此惊讶以至于导致超时
目前有两个选择可以解决问题,但我将寻求更多信息。
我非常感谢您花时间向我解释这些事情
(请参阅 SAP注释853576 )
如果以上软件包已获得分析报告功能或 SAP注释中的SQL语句的许可, 1438410 也可能有帮助。
您能提供DBACOCKPIT的解释屏幕示例的屏幕截图,并提供所请求的ASH示例(从工具栏)吗?
您好
绝对不建议(因为缺少更强大的词汇)在LOOP中运行SQL语句。
如果一个带有JOIN的查询不是一个选项,则使用两个多带带的SELECT语句和FOR ALL ENTRIES关键字将数据选择到两个多带带的内部表中,然后使用LOOP将它们联接到内存中。 不要在LOOP中从数据库中选择记录。
最多设置5个标签!
嗨
此选项不用于所有条目(如您所要求的)。 使用Appending子句。
由于您的lt_aux只有3条记录,因此应该可以更快地得到结果。
**这可能不是一个正确的解决方案,但是您可以尝试使用此方法并在ST05中查看性能 并决定。
致谢
Venkat
谢谢您的评论,桑德拉
我将尝试研究有关这些操作的更多信息。
生产中的LT_AUX只有3行。 这就是为什么我如此惊讶以至于导致超时
目前有两个选择可以解决问题,但我将寻求更多信息。
我非常感谢您花时间向我解释这些事情
如果是,则可以在AWR历史记录或游标缓存中找到该语句并从那里进行解释。 然后,您可以选择索取ASH样品。
(请参阅 SAP注释853576 )
如果以上软件包已获得分析报告功能或 SAP注释中的SQL语句的许可, 1438410 也可能有帮助。
您能提供DBACOCKPIT的解释屏幕示例的屏幕截图,并提供所请求的ASH示例(从工具栏)吗?
您好
绝对不建议(因为缺少更强大的词汇)在LOOP中运行SQL语句。
如果一个带有JOIN的查询不是一个选项,则使用两个多带带的SELECT语句和FOR ALL ENTRIES关键字将数据选择到两个多带带的内部表中,然后使用LOOP将它们联接到内存中。 不要在LOOP中从数据库中选择记录。
问候,Mateusz
一周热门 更多>