Building value

Oracle SQL 기본 문법[CREATE.테이블 복사] 본문

RDBMS/Oracle DB

Oracle SQL 기본 문법[CREATE.테이블 복사]

developer_Michael 2023. 3. 16. 17:39
반응형
CREATE TABLE EMP01 
AS SELECT * 
FROM EMP 
WHERE 1 = 0;

위 SQL문은 "EMP" 테이블의 구조와 같은 테이블 "EMP01"을 생성하는 쿼리입니다. 

 

"EMP" 테이블에 저장된 데이터는 선택하지 않기 위해 WHERE 절이 1=0으로 설정되어 있습니다. 

 

따라서 "EMP01" 테이블은 "EMP" 테이블과 동일한 칼람을 가지지만 데이터는 포함하지 않습니다. 

 

이러한 기법을 사용하여 "EMP" 테이블과 같은 구조를 가진 빈 테이블을 생성하고, 

 

이를 기초로 다른 작업을 수행할 수 있습니다.

 

위 쿼리에서 'WHERE 1 = 0'을 제외하면 데이터까지 복사됩니다.

 

SELECT *
FROM EMP01;

SELECT * FROM EMP01; // 출력 결과

 

만약에 전체 칼람이 아닌 특정 칼람만 복사를 하고 싶으면 아래와 같이 쿼리를 작성하시면 됩니다.

 

CREATE TABLE EMP01 
AS SELECT EMPNO, ENAME, JOB
FROM EMP;

기존의 EMP 테이블에서 EMPNO, ENAME, JOB 컬럼을 선택하여 EMP01 테이블로 복사합니다. 

 

이 때, AS SELECT 구문을 사용하여 새로운 테이블을 생성하고, 선택한 컬럼들을 가져와서 새로운 테이블에 저장합니다.

 

SELECT * FROM EMP01; // 출력 결과

 

반응형

'RDBMS > Oracle DB' 카테고리의 다른 글

Oracle SQL 기본 문법[INSERT]  (0) 2023.03.16
Oracle SQL 기본 문법[ALTER]  (0) 2023.03.16
Oracle SQL 기본 문법[CREATE/DROP]  (0) 2023.03.16
Oracle SQL 기본 문법[SubQuery.EXISTS]  (0) 2023.03.15
Oracle SQL 기본 문법[DECODE]  (0) 2023.03.15