Database/Oracle
-
Oracle - JOIN 사용 시 ON과 WHERE의 차이Database/Oracle 2023. 2. 21. 14:14
JOIN 사용 시 ON과 WHERE의 차이 쿼리문 01 SELECT * FROM TBLD_01 a LEFT JOIN TBLD_02 b ON (a.aa == b.aa) WHERE b.cc = 7; 위 쿼리문의 경우 TBLD_01과 TBLD_02 테이블에 대해서 OUTER JOIN을 수행한 후 b.cc = 7인 데이터들을 추출한다. 위 쿼리문의 작업 순서는 아래와 같다. 1. TBLD_01과 TBLD_02 테이블의 OUTER JOIN 수행 2. OUTER JOIN 결과들 중 b.cc = 7인 데이터들을 추출 쿼리문 02 SELECT * FROM TBLD_01 a LEFT JOIN TBLD_02 b ON (a.aa = b.aa AND b.cc = 7); 하지만, 위 쿼리문의 경우 TBLD_01과 cc 속성 값..
-
Oracle - 조건문(IF, CASE)Database/Oracle 2022. 4. 27. 10:33
Oracle 조건문 IF 조건문 1. 사용법 IF 조건01 THEN 처리문 ELSIF 조건02 THEN 처리문 ... ELSE 처리문 END IF; IF 문은 조건이 참이면 해당 조건의 처리 문장이 실행된다. 사용법은 위와 같으며, 다른 언어와 비교하면 전체적인 구조는 크게 다르지 않지만 3가지가 다르다. 첫 번째는 조건 다음에 THEN을 붙인다는 것이고, 두 번째는 여러 개의 조건을 사용해야 하는 경우 ELSE IF가 아닌 ELSIF라는 명령어를 사용하는 것이다. 세 번째는 IF를 끝낸다는 END IF를 붙인다는 점에서 다르다. 2. 예제 DECLARE SCORE NUMBER := 80; BEGIN IF SCORE >= 90 THEN DBMS_OUTPUT.PUT_LINE('A 등급'); ELSIF SC..
-
Oracle - MERGE INTODatabase/Oracle 2022. 4. 26. 11:37
MERGE INTO MERGE 문이란? MERGE 문은 테이블에 원하는 데이터가 있으면, 그 데이터를 UPDATE 하고 없으면 INSERT 하는 구문이다. 이러한 MERGE 문을 사용해서 PK 중복 문제 해결 등 다양한 문제를 해결할 수 있다. MERGE 문의 사용법 MERGE INTO 테이블명 USING 타겟 테이블 ON 타겟 데이터 WHEN MATHCED THEN SET 칼럼01 = 값01, 칼럼02 = 값02, ... WHERE 조건 WHEN NOT MATHCED THEN INSERT (칼럼01, 칼럼02, ...) VALUES (값01, 값02, ...) WHERE 조건; MERGE 문의 사용법은 위와 같다. 다른 DML 보다 문법이 복잡한 편이기 때문에, 처음 접하게 되면 사용하기 힘들다. 아래..
-
Oracle - 반복문(LOOP, WHILE, FOR)Database/Oracle 2022. 4. 25. 18:01
Oracle 반복문 LOOP 문 1. 사용법 LOOP 처리문; EXIT[조건]; END LOOP; LOOP 문의 사용방법은 위와 같다. 2. 예제 DECLARE NUM01 NUMBER := 1; BEGIN LOOP DBMS_OUTPUT.PUT_LINE(NUM01); -- 변수 출력 NUM01 := NUM01 + 1; -- 변수 1씩 증가 EXIT WHEN NUM01 > 10; -- NUM01이 10보다 크면 반복문 종료 END LOOP; END; 반복문은 특정 조건까지만 반복하며 로직을 수행하는데, LOOP 문의 반복문은 EXIT[WHEN 조건];이라는 구절에서 종료된다. 따라서, EXIT를 누락하면 해당 LOOP는 무한루프에 빠지게 되니 사용할 때 주의해야 한다. 1 2 3 4 5 6 7 8 9 10 ..
-
Oracle - 변수 및 상수 선언Database/Oracle 2022. 4. 25. 17:36
Oracle 변수 및 상수 선언 PL / SQL이란? PL / SQL은 상용 관계형 데이터베이스 시스템인 Oracle DBMS에서 SQL 언어를 확장하기 위해 사용하는 컴퓨터 프로그래밍 언어 중 하나이다. Oracle에서 변수를 선언한 후 해당 변수를 사용하기 위해서는 이 PL / SQL을 사용하면 된다. 변수 및 상수 선언 1. 변수 선언 변수명 데이터타입 := 초기값; NUM01 NUMBER := 1; STR01 VARCHAR2(10) := 'STR01'; 변수의 선언 방법은 위 예제와 같다. PL / SQL에서는 일반적인 프로그래밍 언어에서 사용하는 '='이 아니라 ':='을 사용한다. 특정 변수에 ':='을 기준으로 오른쪽 값을 왼쪽에 할당한다는 뜻을 가지고 있다. 변수는 선언과 동시에 초기값을 ..