본문 바로가기

Computer Engineering/DB

CTAS (Create Table as select ) 시타스

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;