특정 조건식을 통해 상황에 따라 실행할 내용을 달리하는 방식의 명령어를 조건문이라고 한다. 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 |