파티션 테이블 만들기
작성자 관리자 작성시간 2006-10-24 10:32:02
 

1. 대용량의 테이블을 사용할때..



CREATE TABLE AAA(

              ID        CHAR(4),

              NAME  VARCHAR2(20)

    )

PARTITION BY RANGE(ID)(

PARTITION ID1 VALUES LESS THAN ('1000') TABLESPACE data1

PARTITION ID2 VALUES LESS THAN ('2000') TABLESPACE data2

PARTITION ID3 VALUES LESS THAN ('3000') TABLESPACE data3

)

이렇게 해주면 ID가 '1000'보다 작으면 테이블스페이스 DATA1에

                          '2000'보다 작으면 테이블스페이스 DATA2에

                          '3000'보다 작으면 테이블스페이스 DATA3에

들어간다.



그리고 값이 조건 값이 몇개로 정해저 있다면 RANGE 대신 LIST를 사용하면 되는데

PARTITION BY LIST(ID)(

PARTITION ID1 VALUES ('1000','1001') TABLESPACE data1

PARTITION ID2 VALUES ('2000','2002') TABLESPACE data2

PARTITION ID3 VALUES ('3000','3003') TABLESPACE data3

)

이렇게 사용한다.



실제로 이것을 사용하려면

AAA 테이블 명 바로 뒤에

SELECT * FROM AAA PARTITIOIN(ID1)

일케 해주면 되지롱~~



예전에 레코드 갯수가 천만개를 넘는 테이블을 다룬적이 있어서..

PARTITION 을 알았더라면.. 그만큼 시간이 걸리지 않았을거란 생각이 든다..


목록 | 입력 | 수정 | 답변 | 삭제