본문 바로가기

DATABASE/PL_SQL 기초

03. 조건 제어문

특정 조건식을 통해 상황에 따라 실행할 내용을 달리하는 방식의 명령어를 조건문이라고 한다. PL/SQL 에서는 IF문과 CASE문을 사용할 수 있다.

 

IF조건문

PL/SQL에서 제공하는 IF 조건문은 다음과 같이 세 가지 방식을 사용할 수 있다.

1) IF-THEN : 특정 조건을 만족하는 경우 작업 수행

2) IF-THEN-ELSE : 특정 조건을 만족하는 경우와 반대 경우에 각각 지정한 작업 수행

3) IF-THEN-ELSIF : 여러 조건에 따라 각각 지정한 작업 수행

 

1) IF - THEN 

여러 프로그래밍 언어에서 사용하는 단일 IF문과 같은 역할을 하는 IF-THEN문은 다음과 같이 사용한다. 주어진 조건식의 결과 값이 true 인 경우에는 작업을 수행하지만 false 또는 NULL일 경우에는 작업을 수행하지 않고 다음 내용을 실행한다.

IF 조건식 THEN

 수행할 명령어 ;

END IF ;

 

2) IF - THEN - ELSE

지정한 조건식의 결과 값이 true일 경우에 실행할 명령어와 조건식의 결과 값이 true가 아닐 때 실행할 명령어를 각각 지정할 수 있다.

IF 조건식 THEN

 수행할 명령어 ;

ELSE 

 수행할 명령어 ; 

END IF ;

 

3) IF - THEN - ELSIF

여러 종류의 조건을 지정하여 각 조건을 만족하는 경우마다 다른 작업의 수행을 지정할 수 있다.

IF 조건식 THEN

 수행할 명령어 ; 

ELSIF 조건식

 수행할 명령어 ;

ELSIF 조건식

 수행할 명령어 ;

...

ELSE 

 수행할 명령어 ;

END IF;

 

CASE조건문

CASE조건문도 IF조건문과 마찬가지로 조건식의 결과 값에 따라 여러 가지 수행 작업을 지정할 수 있다. IF-THEN-ELSIF 문과 같이 조건식의 결과 값이 여러가지 일때 CASE조건문을 좀 더 단순하게 표현할 수 있다. CASE 조건문은 다음과 같이 두 가지 방식을 사용한다.

1) 단순 CASE문 : 비교 기준이 되는 조건의 값이 여러 가지일 때 해당 값만 명시하여 작업 수행

CASE 비교기준

    WHEN 값1 THEN 

    수행할 명령어 ;

    WHEN 값2 THEN 

    수행할 명령어 ; 

....

    ELSE

    수행할 명령어 ;

END CASE;

2) 검색 CASE문 : 특정한 비교 기준 없이 여러 조건식을 나열하여 조건식에 맞는 작업 수행

CASE 

    WHEN 조건식1 THEN 

    수행할 명령어 ;

    WHEN 조건식2 THEN 

    수행할 명령어 ; 

....

    ELSE

    수행할 명령어 ;

END CASE;

 

SQL문의 CASE는 END로 종료하고 , PL/SQL문의 CASE는 END CASE로 종료한다는 것을 기억해두자

'DATABASE > PL_SQL 기초' 카테고리의 다른 글

04. 반복 제어문  (0) 2024.04.07
02. 변수와 상수  (0) 2024.04.07
01. PL/SQL 구조  (0) 2024.04.07