每个日期一个分区,且类型为8位数字
时间: 2024-03-18 17:41:57 浏览: 63
cpp-pgpathman是一个PostgreSQL高性能表分区插件
好的,以下是修改后的SQL语句:
```sql
CREATE TABLE oceanBase (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
sys VARCHAR(10),
date DATE
) PARTITION BY RANGE COLUMNS(sys, date)(
PARTITION p0 VALUES LESS THAN ('sys1', '20080101'),
PARTITION p1 VALUES LESS THAN ('sys1', '20080102'),
PARTITION p2 VALUES LESS THAN ('sys1', '20080103'),
PARTITION p3 VALUES LESS THAN ('sys1', '20080104'),
PARTITION p4 VALUES LESS THAN ('sys1', '20080105'),
PARTITION p5 VALUES LESS THAN ('sys1', '20080106'),
PARTITION p6 VALUES LESS THAN ('sys1', MAXVALUE),
PARTITION p7 VALUES LESS THAN ('sys2', '20080101'),
PARTITION p8 VALUES LESS THAN ('sys2', '20080102'),
PARTITION p9 VALUES LESS THAN ('sys2', '20080103'),
PARTITION p10 VALUES LESS THAN ('sys2', '20080104'),
PARTITION p11 VALUES LESS THAN ('sys2', '20080105'),
PARTITION p12 VALUES LESS THAN ('sys2', '20080106'),
PARTITION p13 VALUES LESS THAN ('sys2', MAXVALUE)
);
```
这个表也使用了两个列作为分区键,第一个是sys,第二个是date。使用RANGE COLUMNS表示按照列值范围进行分区。一级分区根据sys的值,分为sys1和sys2两个分区。二级分区根据date的值,每个日期一个分区,类型为8位数字,例如:20080101。这样就可以将数据按照系统号和日期进行分区存储了。
阅读全文