plsql if문 안에 select 못쓰나요? 0 3 1,040

by idoris [2020.05.14 19:23:29]


바보 같은 질문일수도 있는데..

아래 구문이 왜 에러나는지 싶네요..

IF문 안에서는 SELECT 절 안됐었나요?

 

DECLARE

BEGIN

 IF (SELECT 1 FROM DUAL) = 1 THEN
  DBMS_OUTPUT.PUT_LINE('1');
 END IF;
END;

by 생각 [2020.05.15 12:29:23]

into 로 조회온 변수를 지정하세요.


by 마농 [2020.05.15 15:50:25]

논리적으로 보면 충분히 가능할 수 있는 구문이네요.
그런데 에러가 나니 어쩔 수 없이 다른 방안을 찾아야죠.
그냥 IF 문에서는 SELECT 못쓴다는 제약을 걸어 놓은 듯.


by 아기봉 [2020.05.18 02:25:44]

 

 

 declare
    v_count number;
 begin
    select count(*) into v_count from dual;

    if v_count >= 1 then
            dbms_output.put_line('Pass');
    end if;
 end;

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