SQL 建表用partition 的用法
时间: 2024-05-06 18:14:59 浏览: 112
在 SQL 中,使用 Partitioning 可以将表分成更小、更可管理的部分,这些部分称为 partition。Partitioning 可以提高查询效率,使数据更容易维护。下面是一个使用 Partitioning 的建表语句示例:
```
CREATE TABLE sales (
sale_id INT NOT NULL,
sale_date DATE NOT NULL,
sale_amount DECIMAL(10,2) NOT NULL
)
PARTITION BY RANGE (YEAR(sale_date)) (
PARTITION p0 VALUES LESS THAN (2010),
PARTITION p1 VALUES LESS THAN (2011),
PARTITION p2 VALUES LESS THAN (2012),
PARTITION p3 VALUES LESS THAN (2013),
PARTITION p4 VALUES LESS THAN (2014),
PARTITION p5 VALUES LESS THAN (2015),
PARTITION p6 VALUES LESS THAN (2016),
PARTITION p7 VALUES LESS THAN (2017),
PARTITION p8 VALUES LESS THAN (2018),
PARTITION p9 VALUES LESS THAN MAXVALUE
);
```
这个例子中,我们创建了一个名为 sales 的表,并将其分成了 10 个 partition,每个 partition 包含了一年的销售数据。我们使用 PARTITION BY RANGE 子句指定了分区类型,并按照年份将表分成了 10 个 partition。每个 partition 用 VALUES LESS THAN 指定了它所包含的年份,最后一个 partition 用 VALUES LESS THAN MAXVALUE 指定了所有大于 2018 年的数据都归为最后一个 partition。
阅读全文