- 1
- 0
- 约3.84千字
- 约 5页
- 2017-08-23 发布于河南
- 举报
For all entries使用中注意的问题
对于不能join 的表,使用for all entries in 语句将该表与内表串联。
SELECT bseg~kunnr
bseg~lifnr
bseg~belnr
INTO TABLE itab_bseg
FROM bseg
FOR ALL ENTRIES IN itab_main
WHERE bukrs in _bukrs
and ( belnr = itab_main-belnr
AND hkont = itab_main-hkont ).
由于BSEG 不能和BSIS 做inner join 所以先将BSIS 内容放到itab_main 中,
然后用 FOR ALL ENTRIES IN 来串联。
1-WHERE 子句中的bukrs in _bukrs 是指bseg-bukrs 存在于_bukrs 这个
select-options 中,_bukrs 不是itab_main 的field 所以这部分不包括在括号
中.
当然会增加内存使用了。
原本一个条件,数次(驱动表的纪录条数)向对DB 操作,
使用了FOR ALL ENTRIES 后,
相当于把驱动表里的条件字段的所有值用OR 连起来,
一次对DB 操作,
条件语句增大,势必使内存占用增多。
1.SELECT CARRID
原创力文档

文档评论(0)