在Oracle數(shù)據(jù)庫(kù)中,創(chuàng)建范圍分區(qū)表可以通過(guò)使用CREATE TABLE
語(yǔ)句并指定PARTITION BY RANGE
子句來(lái)實(shí)現(xiàn)
CREATE TABLE sales_range_partition (
order_id NUMBER,
order_date DATE,
customer_id NUMBER,
amount NUMBER
)
PARTITION BY RANGE (order_date)
(
PARTITION p1 VALUES LESS THAN (TO_DATE('2021-01-01', 'YYYY-MM-DD')),
PARTITION p2 VALUES LESS THAN (TO_DATE('2021-04-01', 'YYYY-MM-DD')),
PARTITION p3 VALUES LESS THAN (TO_DATE('2021-07-01', 'YYYY-MM-DD')),
PARTITION p4 VALUES LESS THAN (TO_DATE('2021-10-01', 'YYYY-MM-DD')),
PARTITION p5 VALUES LESS THAN (MAXVALUE)
);
在這個(gè)示例中,我們創(chuàng)建了一個(gè)名為sales_range_partition
的表,該表包含四個(gè)列:order_id
、order_date
、customer_id
和amount
。我們使用PARTITION BY RANGE
子句指定按order_date
列進(jìn)行范圍分區(qū)。然后,我們定義了五個(gè)分區(qū):
p1
:存儲(chǔ)order_date
小于2021-01-01
的記錄。p2
:存儲(chǔ)order_date
大于等于2021-01-01
且小于2021-04-01
的記錄。p3
:存儲(chǔ)order_date
大于等于2021-04-01
且小于2021-07-01
的記錄。p4
:存儲(chǔ)order_date
大于等于2021-07-01
且小于2021-10-01
的記錄。p5
:存儲(chǔ)order_date
大于等于2021-10-01
的記錄。我們使用MAXVALUE
表示該分區(qū)包含所有大于等于2021-10-01
的值。請(qǐng)注意,您需要根據(jù)實(shí)際需求調(diào)整分區(qū)鍵和分區(qū)范圍。在創(chuàng)建范圍分區(qū)表時(shí),請(qǐng)確保分區(qū)鍵列的數(shù)據(jù)類型與分區(qū)值的數(shù)據(jù)類型相匹配。