본문 바로가기

교육/Oracle

Day 50 (DB 파티션)

반응형

<목록>

1. Range Partition

 

 

 


1. Range Partition

Range Partition은 회계나 날짜와 같은 숫자들을 기준으로 분할하는 경우 많이 사용된다.

주로 날짜를 기준으로 데이터를 구분할때 많이 사용하는데 데이터를 입력하게 되면 시, 분, 초단위 까지 저장이 되지만 실질적으로 사용하는 것은 연, 월, 일을 기준으로 데이터를 구분짓기 때문이다.

Range Partition의 특징은 상한값만 지정하고, 하한값은 지정하지 않는다.

CREATE TABLE <스키마.테이블명>
(
...
)
PARTITION BY RANGE(<컬럼명>)
(
PARTITION <파티션명> VALUES LESS THAN (<상한값>), 
...
PARTITION pr_max VALUES LESS THAN (MAXVALUE)
);
// Range Partition을 가지는 테이블을 생성한다. 날짜를 기준으로 하는 경우 상한값 자리에 TO_DATE('<날짜>','YYYY-MM-DD')를 입력한다.

ALTER TABLE <스키마.테이블명> 
ADD PARTITION <파티션명> VALUES LESS THAN (<상한값>);  // Range Partition을 추가한다.

ALTER TABLE <스키마.테이블명>
DROP PARTITION <파티션명>; // Range Partition을 삭제한다.

 

더보기
Range Partition을 가진 테이블을 생성한다
Range Partition의 구성 성분을 확인한다. 입력된 데이터가 없어 공간을 할당받지 않았기 때문에 extent딕셔너리 정보는 없다.
300이상 400미만의 값을 저장하는 파티션을 추가하려 하지만 MAX 파티션 범위와 중복되기 때문에
날짜를 기준으로 하는 Range Partition을 생성한다.

 

반응형

'교육 > Oracle' 카테고리의 다른 글

Oracle 기초 구성  (0) 2020.02.03
Day 51 (오라클 기초구성 3 & 4)  (0) 2020.01.31
Day 49 (DB)  (0) 2020.01.29
Day 48 (오라클 기초구성2)  (0) 2020.01.28
Day 48 (DB)  (0) 2020.01.28