Oracle PL/SQL 사례 설명

Oracle Pl Sql Salye Seolmyeong



제어 흐름은 프로그래밍의 기본 빌딩 블록 중 하나입니다. 프로그램에서 다양한 코드 블록이 실행되는 순서를 정의합니다.

대부분의 프로그래밍 언어와 마찬가지로 Oracle PL/SQL 언어는 IF-THEN, CASE, FOR, WHILE 등과 같은 다양한 제어 흐름 문을 제공합니다.







이 게시물에서는 PL/SQL에서 CASE 문을 사용하여 Oracle 쿼리에 제어 흐름을 도입하는 방법을 배웁니다.



CASE 문 소개

CASE 문을 사용하면 일련의 문을 정의할 수 있습니다. 그런 다음 case 문은 지정된 조건에 따라 실행할 하나의 시퀀스를 선택합니다.



가독성을 유지하면서 일련의 if-then 블록을 선언하는 보다 효율적인 방법이라고 생각하십시오.





다음과 같이 Oracle에서 CASE 문의 구문을 표현할 수 있습니다.

사례
WHEN 조건1 THEN 결과1
WHEN 조건2 THEN 결과2
...
ELSE 결과

CASE 문은 이 구문에서 WHEN 절의 각 조건을 평가합니다.



명령문이 일치하는 명령문을 찾으면 일치하는 결과를 반환합니다. 그러나 경우에 따라 case 문이 일치하는 조건을 찾지 못할 수 있습니다. 이러한 시나리오에서 명령문은 ELSE 블록에 정의된 결과를 실행합니다.

노트 : ELSE 블록은 선택적입니다. 사용할 수 없는 경우 데이터베이스 엔진은 다음 구문을 사용합니다.

또 다른:
CASE_NOT_FOUND 제기;

이렇게 하면 일치하는 조건이 없을 때 데이터베이스 엔진이 예외를 발생시키고 실행을 일시 중지할 수 있습니다.

예제 1: CASE 문 기본 예제

이 예는 Oracle에서 case 연산자의 기본적인 사용 예를 보여줍니다.

선언하다
연령;
항목 char(10);
시작하다
나이 := 24;
케이스 나이
그때 17시
항목 := '거부됨';
24일 때
항목 := '9.99';
45일 때
항목 :='15.99';
또 다른
항목 := '허용되지 않음';
최종 사례;
DBMS_OUTPUT.PUT_LINE(항목);
끝;

제공된 그림은 일치하는 조건을 테스트하고 해당 상태를 반환해야 합니다. 예를 들어 일치 조건이 24이므로 절은 다음과 같이 반환됩니다.

9.99

예 2: 데이터베이스 테이블이 있는 CASE 문

이 예에서는 데이터베이스 테이블과 함께 case 문을 사용합니다.

이름, 성, 급여 선택,
사례
급여가 2500이면 '높음'
그 외 '알 수 없음'
salary_status로 끝남
직원으로부터;

제공된 쿼리는 case 문을 사용하여 직원 테이블의 급여 범위를 테스트합니다.

결과 값은 다음과 같습니다.

결론

이 게시물에서는 Oracle case 문을 사용하여 다양한 조건을 테스트하고 참인 경우 작업을 수행하는 방법을 배웠습니다.