ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 内表(Internal Table)之带Where条件(Clause)的Loop at - []

内表(Internal Table)之带Where条件(Clause)的Loop at - []

原创 Linux操作系统 作者:ultraluck 时间:2019-04-20 21:39:07 0 删除 编辑


内表(Internal Table)之带Where条件(Clause)的Loop at - []


内表(Internal Table)之带Where条件(Clause)的Loop at - []
使用带Where条件(Clause)的Loop at语句时,会遍历整个内表(Internal
Table),而不只是满足Where条件(Clause)的记录。
因此,当多次读取某个比较大的内表(Internal Table)时就可能会影响系统性能(Performance)。
解决办法是首先按关键字段(Key Field)给内表(Internal
Table)排序,然后使用Read语句找到第一个满足条件(Clause)的记录,再从此行开始循环(Loop),并检
查关键字段(Key Field),退出循环(Loop)。

举例:
原句:

loop at it_mseg into wa_mseg
where matnr = p_matnr and
werks = p_werks and
lgort = p_lgort and
sobkz = space.
endloop.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/190059/viewspace-476565/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2004-12-03

  • 博文量
    111
  • 访问量
    78912