테이블(gt_tab)의 no_key(키필드)와 quant(합계를 구할 필드)를 내부 테이블(it_tab)로 읽어와서
같은 키필드(no_key) 값을 갖는 quant(수량)들의 합계 구하는 로직 좀 간단한 예로 부탁드립니다.
no_key quant => no_key quant 이런 식의 결과를 구현해야합니다.
1 1 1 7
1 2 2 4
1 4
2 1
2 3
댓글 6
-
Mike
2008.03.06 20:00
-
김현준
2008.03.06 22:22
loop 도시면서 collect 하시면 됩니다. -
해물탕
2008.03.06 23:38
LOOP안에서 AT END OF NO_KEY. 에서 SUM. 을 이용하면 QUANT합을 낼수 있습니다.
-
옆집남자
2008.03.07 18:02
0.데이타를 담을 인터널 테이블을 다른 이름 으로 한개더 생성합니다.
1.그냥 select 시에 sum을 하시지 마시고 테이블에 있는 데이타를 조건에 맞게 인터널 테이블에 담으세요.
2.담은 인터널 테이블을 loop를 돌려주세요.
3.루프를 돌면서 다른 이름으로 만든 인터널 테이블을 collect 해주세요.
4.새로운 인터널 데이블은 키값에 따른 합계로 나올겁니다.
----------------------------------------------------------
기존 it_thmt004.인터널 테이블이 있다면,
data : new_it_thmt004 like it_thmt004 occurs 0 with header line.
select 해서 it_thmt004에 담으시고.
loop at it_thmmt004.
move-corresponding it_thmt004 to new_it_thmt004.
collect net_it_thmt004.
endloop.
-
크리스~
2008.03.11 01:37
합계 구하고자 하는 값이 CHAR. 타입이면 COLLECT가 편한것 같아요..
-
IAN~
2008.03.11 19:35
이미 gt_tab이 인터널 테이블이니 같은형식의 인터널테이블 하나 더만드시고
gt_tab 룹하시면서 collect 해주시면 간단하게 해결될듯합니다 ^^
COLLECT를 사용하시면 됩니다.
단) no_key 는 Character Type이여야 합니다.