행위

"PLSQL 제어문"의 두 판 사이의 차이

DB CAFE

1번째 줄: 1번째 줄:
PL/SQL 제어문
+
= PL/SQL 제어문 =
 
+
== 조건문 ==
 
+
=== IF 문 ===
 
+
: 조건에 따라 값이 변하는 칼럼의 변수를 지정해 줄때
조건문
+
<source lang=sql>
 
 
 
 
 
 
1. IF 문  
 
 
 
조건에 따라 값이 변하는 칼럼의 변수를 지정해 줄때
 
 
 
 
:= NULL 로 세팅
 
:= NULL 로 세팅
 
+
</source>
IF문 조건에 쓰는 것은 변수를 써야함
+
* IF문 조건에 쓰는 것은 변수를 써야함
 
+
<source lang=sql>
 
IF문 끝나면 꼭 END IF ; 적어주기
 
IF문 끝나면 꼭 END IF ; 적어주기
 +
</source>
  
 
+
=== 조건이 여러개일 경우 ===
 
+
* 문법:
 
+
<source lang=sql>
 
 
조건이 여러개일 경우
 
 
 
 
 
 
 
문법:
 
 
 
 
IF 조건 THEN
 
IF 조건 THEN
  
42번째 줄: 29번째 줄:
  
 
END IF ;
 
END IF ;
 +
  
 
+
=== 조건이 2개일 경우 ===
 
+
* 문법:
 
+
<source lang=sql>
 
 
 
 
 
 
조건이 2개일 경우
 
 
 
 
 
 
 
문법:
 
 
 
 
IF 조건 THEN
 
IF 조건 THEN
  
62번째 줄: 41번째 줄:
  
 
END IF ;
 
END IF ;
 +
</source>
  
  
 
+
== CASE ==
 
+
* 조건이 여러개인 IF문을 더 간결하게 쓸 수 있음
 
+
* 콤마로 구분하지 않으니까 조심하기!
 
+
* CASE문 끝나면 꼭 END ; 적어주기
 
+
* 문법:
 
+
<source lang=sql>
 
 
2. CASE
 
 
 
조건이 여러개인 IF문을 더 간결하게 쓸 수 있음
 
 
 
콤마로 구분하지 않으니까 조심하기!
 
 
 
CASE문 끝나면 꼭 END ; 적어주기
 
 
 
 
 
 
 
문법:
 
 
 
 
CASE 조건
 
CASE 조건
  
93번째 줄: 60번째 줄:
 
END ;
 
END ;
  
 +
</source>
  
  
 +
== 반복문 ==
 +
* 반복 횟수를 알 수 없는 경우
 +
** 기본 LOOP
 +
** WHILE
  
 +
* 반복 횟수를 지정할 경우
 +
** FOR
  
 
+
=== 기본 LOOP ===
 
+
* 문법:
 
+
<source lang=sql>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
===
 
 
 
 
 
 
 
 
 
 
 
반복문
 
 
 
반복 횟수를 알 수 없는 경우
 
 
 
BASIC LOOP
 
 
 
WHILE
 
 
 
 
 
 
 
반복 횟수를 지정할 경우
 
 
 
FOR
 
 
 
 
 
 
 
 
 
 
 
1.BASIC LOOP
 
 
 
 
 
 
 
문법:
 
 
 
 
LOOP
 
LOOP
  
148번째 줄: 83번째 줄:
  
 
END LOOP ;
 
END LOOP ;
 +
</source>
  
 +
* 조건이 만족해야지 반복이 끝난다.
 +
* 조건에 맞지 않으면 계속 반복
  
 
+
=== WHILE ===
조건이 만족해야지 반복이 끝난다. 조건에 맞지 않으면 계속 반복
+
* 문법:
 
+
<source lang=sql>
 
 
 
 
 
 
 
 
2. WHILE
 
 
 
 
 
 
 
문법:
 
 
 
 
WHILE 조건 LOOP
 
WHILE 조건 LOOP
  
170번째 줄: 98번째 줄:
  
 
END LOOP ;
 
END LOOP ;
 
+
</source>
 
+
* 조건이 맞아야 반복 시작
 
 
조건이 맞아야 반복 시작
 
  
  
  
  
 
+
=== FOR ===
 
+
* 문법:
 
+
<source lang=sql>
3. FOR
 
 
 
 
 
 
 
문법:
 
 
 
 
FOR 변수 IN (REVERSE) start값 .. end값 LOOP
 
FOR 변수 IN (REVERSE) start값 .. end값 LOOP
  
194번째 줄: 114번째 줄:
  
 
END LOOP ;
 
END LOOP ;
 +
</source>
  
 
+
* REVERSE는 거꾸로 반복해야할 때 입력해주면 됨.  
 
+
* 내림차순으로 반복된다던가 하는 것.
REVERSE는 거꾸로 반복해야할 때 입력해주면 됨. 내림차순으로 반복된다던가 하는 것.
+
* 대신 start값에서 더 큰 숫자를 써주는것이 아니라 바뀌지 않고 그대로 작은 값을 써줘야한다.
 
+
* FOR 문은 사용할 변수는 미리 선언하지 않아도 사용가능 ** 즉, DECLARE 부문 없이 바로 BEGIN으로 시작해도 됨.
대신 start값에서 더 큰 숫자를 써주는것이 아니라 바뀌지 않고 그대로 작은 값을 써줘야한다.
+
* 꼭 start값 end값은 숫자일 필요는 없음
 
 
 
 
 
 
FOR 문은 사용할 변수는 미리 선언하지 않아도 사용가능 즉, DECLARE 부문 없이 바로 BEGIN으로 시작해도 됨.
 
 
 
꼭 start값 end값은 숫자일 필요는 없음
 
 
[[Category:oracle]]
 
[[Category:oracle]]

2023년 4월 5일 (수) 22:15 판

thumb_up 추천메뉴 바로가기


1 PL/SQL 제어문[편집]

1.1 조건문[편집]

1.1.1 IF 문[편집]

조건에 따라 값이 변하는 칼럼의 변수를 지정해 줄때
:= NULL 로 세팅
  • IF문 조건에 쓰는 것은 변수를 써야함
IF문 끝나면 꼭 END IF ; 적어주기

1.1.2 조건이 여러개일 경우[편집]

  • 문법:
IF 조건 THEN

실행문장 ;

ELSIF 조건 THEN

실행문장 ;

ELSIF 조건 THEN

실행문장 ;

ELSE 실행문장;

END IF ;


=== 조건이 2개일 경우 ===
* 문법:
<source lang=sql>
IF 조건 THEN

실행문장 ;

ELSE 실행문장;

END IF ;


1.2 CASE[편집]

  • 조건이 여러개인 IF문을 더 간결하게 쓸 수 있음
  • 콤마로 구분하지 않으니까 조심하기!
  • CASE문 끝나면 꼭 END ; 적어주기
  • 문법:
CASE 조건

WHEN 조건1 THEN 결과1

WHEN 조건2 THEN 결과2

ELSE

END ;


1.3 반복문[편집]

  • 반복 횟수를 알 수 없는 경우
    • 기본 LOOP
    • WHILE
  • 반복 횟수를 지정할 경우
    • FOR

1.3.1 기본 LOOP[편집]

  • 문법:
LOOP

PL/SQL 문장 ;

PL/SQL 문장 ;

EXIT WHEN 조건 ;

END LOOP ;
  • 조건이 만족해야지 반복이 끝난다.
  • 조건에 맞지 않으면 계속 반복

1.3.2 WHILE[편집]

  • 문법:
WHILE 조건 LOOP

PL/SQL 문장 ;

PL/SQL 문장 ;

END LOOP ;
  • 조건이 맞아야 반복 시작



1.3.3 FOR[편집]

  • 문법:
FOR 변수 IN (REVERSE) start값 .. end값 LOOP

PL/SQL 문장 ;

PL/SQL 문장 ;

END LOOP ;
  • REVERSE는 거꾸로 반복해야할 때 입력해주면 됨.
  • 내림차순으로 반복된다던가 하는 것.
  • 대신 start값에서 더 큰 숫자를 써주는것이 아니라 바뀌지 않고 그대로 작은 값을 써줘야한다.
  • FOR 문은 사용할 변수는 미리 선언하지 않아도 사용가능 ** 즉, DECLARE 부문 없이 바로 BEGIN으로 시작해도 됨.
  • 꼭 start값 end값은 숫자일 필요는 없음