点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
我在一个非常简单的循环中挣扎,这很奇怪。 我想知道也许您能帮我解决这个问题。
因此,我在内部表中有2个选择,它们比较快(两个选择大约需要1秒),例如 lt_a 和 lt_b ,其中 lt_a 有一个子表,相应的 lt_b 行应在此子表中(通过 标识符 id )。 所以-这是我的循环:
*注:一些数字和性能信息:
lt_a(6列)-约55,000行
lt_b(4列)-约40 000行
时间:〜45秒( !)
我有什么可以增强的吗? 我应该使用对应还是使用值(col1 =
谢谢
马里奥
数据:ty_b的lt_b类型标准表,键ID为" lt_a",定义为其他位置的属性
....
按ID对lt_b排序。 在lt_b处循环以分配field-symbol()。
将lt_a [id =-id] -subtable分配给field-symbol( )。 "哪个更快-对应或插入值。 将相应的#( )插入表 中。 "注释出来..相应的较短(但较慢吗?) *插入值lt_a( * col1 = -col1 * col2 = -col2 * col3 = -col3
* col4 =-col4 *)放入表 中。 结束循环。
您需要使用具有相同ID的已排序表。 您将看到性能上的惊人提高。 永远不要使用像这种开发之王的TYPE STANDARD TABLE这样的声明之王。
我想您正在没有HANA数据库的情况下工作。 如果您拥有HANA,则可以为准备数据的CDS视图建模。
最好的问候。
最好的方法是先尝试合并或对所有条目使用。
如果您的要求只是移动数据,则可以尝试FILTER或
如果id是唯一的,请尝试将哈希键添加到具有组件id的表中,然后选择按ID排序的结果
否则,添加具有非唯一键ID的排序键
很明显,Ruben Rollano Carcajona,Xavier Joubert,Quynh Doan Manh-你们都是正确的,通过将这些片段放在一起,我改进了 从45秒到1.6的性能:)!。
lt_a处的因此,我将排序表与键" id"一起使用:
谢谢您的帮助!
最诚挚的问候,
马里奥(Mario)
一周热门 更多>