Oracle 12c 데이터베이스 04 - SELECT INTO, INSERT INTO SELECT

💡 본 글은 ‘실습과 함께하는! 데이터베이스 Oracle 12c’ 강의 내용을 바탕으로 정리하였습니다.

SELECT INTO, INSERT INTO SELECT

SELECT INTO

  • 쿼리 결과를 새 테이블로 만듦
  • 오라클에서는 SELECT INTO 대신 아래의 문법을 따름
  • 일종의 뷰와 동일한 결과(뷰는 필요 없으면 없애는 임시 테이블, SELECT INTO 테이블은 계속 유지)

📌 SQL은 비절차적 언어. 중간 과정은 필요 없고 결과를 수행해서 결과만 알려달라고 함. 중간 과정은 DB에 따라서 깔끔하고 빠르게 결과가 나올 수도 있고, 아닐 수도 있음. 그래서 똑똑하게 수행을 하도록 해주는 튜닝이라는 작업을 하기도 함.

(문법)

  CREATE TABLE 테이블명 AS SELECT * FROM 테이블명

INSERT INTO

  • 쿼리 결과를 기존의 테이블에 추가한다 (기존 테이블이 존재해야 함)
  • ⭐SELECT 하는 테이블과 INSERT 테이블은 동일한 구조를 가져가야 함
  INSERT INTO 테이블명1 SELECT * FROM 테이블명2 WHERE 조건절...

조건문

CASE … WHEN … END

  • SQL 조건문(if/switch문)에 해당

(문법)

  CASE WHEN 조건값1 THEN ...
       WHEN 조건값2 THEN ...
       ELSE ...
  END