Database

CTAS (Create Table as select ) 시타스

steloflute 2016. 7. 13. 23:30

http://yagi815.tistory.com/298


CTAS (Create Table as select ) 란 말그대로 새로운 테이블을 생성할때

기존의 테이블의 컬럼 속성과 해당데이터를 모두 똑같이 복제 하여 새로운 테이블을

만들때 사용하는 sql 명령어로 매우 간편하게 테이블과 데이터를 생성할 수 있다는 장점이 있다. 

그러나 제약에 있어서는 not null 속성외에는 복제가 안된다. 따로 일일이 설정해줘야 한다


1. 복사할 원본 테이블의 데이터를 본다. 

SQL> SELECT * FROM 원본 테이블명;


사용자 삽입 이미지


2. CTAS 명령 실행

SQL> CRATE TABLE 생성할 테이블명

AS SELECT * FROM 원본 테이블명;





사용자 삽입 이미지



3. 생성한 테이블 속성을 확인해 본다. NOT NULL속성고 함께 컬럼 정보들이 그대로 복사생성되었다.

SQL> DESC 생성된 테이블명




사용자 삽입 이미지




4. 새로 생성한 테이블 을 조회해 본다.

SQL> SELECT * FROM 생성한 테이블명;


사용자 삽입 이미지



#############################################################################
같은 형식의 테이블은 만들되 데이터를 복사 하지 않을경우 
##############################################################################

SQL>create table emp_copy
as select * from employees
where 1= 0;