IT이야기

오라클 테이블 구조 및 데이터 복사하기 CREATE TABLE AS

cyworld 2021. 2. 17. 18:16
반응형

1. 테이블과 데이터 동시에 복사하기

CREATE TABLE [신규테이블명] AS SELECT * FROM [복사대상테이블명] [WHERE 절]

예시) 오늘 날짜를 이용하여 현재 테이블 전체 데이터를 백업하기

CREATE TABLE TB_TEST_20210217 AS SELECT * FROM TB_TEST;


2. 테이블 구조만 복사하기

WHERE 조건에 1=0 으로 하여 데이터는 포함되지 않도록 함.

CREATE TABLE [신규테이블명] AS SELECT * FROM [복사대상테이블명] WHERE 1=0

예시)

CREATE TABLE TB_TEST_20210217 AS SELECT * FROM TB_TEST WHERE 1=0;

 

3. 이미 존재하는 테이블에 데이터를 복사하기

INSERT INTO [데이터가복사될테이블명] SELECT * FROM [데이터를복사할테이블명] [WHERE 절]

예시) TB_TEST_B 테이블의 데이터 중 AGE 컬럼 값이 '30'인 값만 추출하여 TB_TEST_A 테이블에 복제
        단, 구조가 같은 경우다.

INSERT INTO TB_TEST_A SELECT * FROM TB_TEST_B WHERE AGE = 30;

구조가 다를 경우는 아래처럼 하면 된다.

INSERT INTO TB_TEST_A (NAME, AGE) SELECT NAME, AGE FROM TB_TEST_B WHERE AGE = 30;
반응형