변수명을 루프에 이용.. 0 1 1,583

by 김홍관 [2006.10.24 10:14:32]


아규로 b_1, b_2, b_3, b_4, b_5 를 받습니다.

 

이 아규를 모두 붙여야 합니다.

 

보시다시피 변수명에 1,2,3,4,5  이런 규칙성이 있으므로 루프를 돌려서 받을려고 합니다.

 

LOOP

         V_INPUT := 'b_'||TO_CHAR(V_CNT);
          if V_INPUT = '' then
                EXIT;
          end if;
          V_SUM := V_SUM||V_INPUT;
          V_CNT := V_CNT + 1;

END LOOP

 

이렇게 하니 V_INPUT 에 값이 들어오지 않고 'b_1' 이 들어오네요..

 

위처럼 하는건 불가능한지 다른 방법이 있는지 고수님들의 도움을 기다립니다.

by 궁금이 [2006.10.24 00:00:00]
'b_1', 'b_2', ... 라는 변수가 아닌 스트링 자체가 V_INPUT에 들어오는 것은 당연합니다. 분명 V_INPUT은 varchar와 같은 캐릭터 타입일 것이니까요.

아마도 제 생각에는 declare로 선언하는 부분을 적절하게 바꾸셔야 될 것입니다.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입