A테이블과 B테이블이 있습니다.
A테이블에는 값이 있는데, B테이블에는 값이 없으면 insert하는 로직을 구현하고 싶습니다.
예를들어 그 값이 업종코드라고 합시다.
저는 이렇게 짰습니다.
select distinct 업종코드 from A
where 업종코드 not in (select 업종코드 from B)
저는 이 로직을 loop문과 read table로 짜보고 싶은데요.
loop와 read table을 이용하여 두 테이블을 비교하는 로직은 어떻게 짜야 할까요??
댓글 2
-
호로록
2021.01.16 00:38
-
십년만에
2021.01.18 17:32
select * into table lt_a
from a.
sort it_a by a테이블 key.
select * into talb lt_b
from b.
sort lt_b by b테이블 key.
loot at it_a into ls_a.
read table lt_b into ls_b
with b테이블 key = a테이블 fields.
if sy-subrc <> 0.
insert into b from ls_b
endif.
endlloop.
성능은 별로지만 a 테이블 b테이블 다 들고 와서 loop 돌면 되겠네요.
for all entries를 사용해 a테이블 loop돌면서 b테이블은 데이터는 read해서 subrc 4 면 없는거니 insert 0은 있는거니 업데이트 이방법은 어떠신지요