프로시져 내에서 특정 select 결과를 담아놓고 쓰는 방법이 있나요? 0 6 2,715

by 프리어 Temporary Table [2012.10.11 13:28:12]



프로시져 내에서 특정 select결과를 유지하면서

그것으로 이후 다른 select나 쿼리에서 조인을 하거나 서브쿼리로 넣을수 있는 방법이 있을까요?

일반 쿼리에서 with 문처럼..

그런데 with문은 하나의 쿼리에서만 가능하나  제가 원하는것은 프로시져 내의 여러 쿼리에서 사용할수 있는

방법이 있는지가 궁금한데요.. 혹시 방법이 있을까요?
by 손님 [2012.10.11 13:33:28]

by 아발란체 [2012.10.11 13:47:36]
커서라는 것을 이용하면 되고용,
예시를 쓸려고 했더니 위에 참고 링크에 예시 및 구체적인 정보가 다 있네요 - :)

by 마농 [2012.10.11 14:01:10]

by 프리어 [2012.10.11 15:13:44]


답변 감사합니다.
그런데 제가 프로시져 안에서 템프러리 테이블을 생성 해서 하려고 하니까 안되던데 뭔가
다른 설정을 해줘야 하는가요?

execute
declare
   
 begin
    DECLARE GLOBAL TEMPORARY TABLE TT (AA VARCHAR2(10))
    On commit preserve rows;  

end
;

이런식으로 오렌지에서 실행 해봤는데 안되네요..


by 마농 [2012.10.11 15:33:31]

프로시져 수행할때 생성하는게 아니고, 미리 만들어 놓는거에요.
프로시져에서는 데이터만 담아 쓰면 되구요.
테이블 자체가 임시가 아니라 데이터만 임시입니다.
테이블은 하나의 영구 객체입니다.


by 프리어 [2012.10.12 10:32:30]

아.. 그렇군요.. 좋은 답변 감사합니다. ~^^
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입