stored procedure 만드는중 막혀서 질문드립니다.. 0 2 843

by 키에리안 [SQL Query] [2020.10.21 12:54:52]


안녕하세요. 프로시져를 제작중에 막혀서 질문드립니다..

서버코드상에서 진행하던 내용들을 db에서 진행하도록 바꾸는 이슈가 생겨 작업중 원하는 방법을 찾지 못했습니다.

for (let t of arrays){
    call_proc(t.a, t.b, t.c);
}

를 sql 에서 하려면 어떻게 하는게 좋을까요?

arrays 에 해당하는 내용은 db에서 select 를 통해서 조회할 수 있는 상태입니다. 

실제로 동작하지 않지만 아래 느낌의 코드를 작성하고 싶습니다.

SELECT test_proc(a, b, c) FROM test WHERE id in (1,2,3);

사실 select 되는 내용이 3개 고정이라서 중복코드를 3번 작성해도 되지만.. 다른방법을 찾고 싶습니다..

by 마농 [2020.10.21 14:16:40]
-- Oracle --
BEGIN
    FOR c1 IN (SELECT a, b, c FROM test WHERE id in (1,2,3))
    LOOP
        test_proc(c1.a, c1.b, c1.c);
    END LOOP;
END;
/

 


by 키에리안 [2020.10.21 15:24:33]

답변 감사합니다. mariadb라 그런지 해당코드로는 동작하진 않네요 ㅠㅠ. 해당 키워드가지고 찾아보겠습니다. 감사합니다

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