mysql 分区表建表sql
时间: 2023-11-27 20:04:42 浏览: 41
创建 MySQL 分区表的 SQL 语句如下所示:
```sql
CREATE TABLE table_name (
id INT,
name VARCHAR(100),
created_at DATETIME
)
PARTITION BY RANGE (YEAR(created_at)) (
PARTITION p0 VALUES LESS THAN (2020),
PARTITION p1 VALUES LESS THAN (2021),
PARTITION p2 VALUES LESS THAN (2022),
PARTITION p3 VALUES LESS THAN MAXVALUE
);
```
这是一个简单的示例,将表按照 `created_at` 字段的年份进行分区,分为 p0、p1、p2 和 p3 四个分区。你可以根据自己的需求修改字段名和分区策略。
相关问题
mysql的建表分区sql语句
以下是MySQL的建表分区SQL语句的示例:
```mysql
CREATE TABLE sales (
id INT NOT NULL,
region VARCHAR(100),
country VARCHAR(100),
item_type VARCHAR(100),
sales_channel VARCHAR(100),
order_date DATE,
order_id INT,
units_sold INT,
unit_price DECIMAL(10,2),
total_price DECIMAL(10,2)
)
PARTITION BY RANGE (YEAR(order_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 (2019),
PARTITION p10 VALUES LESS THAN MAXVALUE
);
```
上述示例中,使用了`PARTITION BY RANGE`语句来指定分区方式,按照订单日期的年份进行分区。然后使用`PARTITION`语句来指定每个分区的范围。
mysql带表注释的分区表建表语句
以下是带表注释的分区表建表语句的示例:
```
CREATE TABLE `my_table` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`age` int(11) NOT NULL,
`date` date NOT NULL,
`comments` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`,`date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
PARTITION BY RANGE (YEAR(date)) (
PARTITION p0 VALUES LESS THAN (2020) COMMENT '2019及以前',
PARTITION p1 VALUES LESS THAN (2021) COMMENT '2020',
PARTITION p2 VALUES LESS THAN (2022) COMMENT '2021',
PARTITION p3 VALUES LESS THAN (2023) COMMENT '2022',
PARTITION p4 VALUES LESS THAN (2024) COMMENT '2023',
PARTITION p5 VALUES LESS THAN MAXVALUE COMMENT '2024及以后'
) COMMENT='我的分区表';
```
这个示例创建了一个名为 `my_table` 的表,包含了 `id`、`name`、`age`、`date` 和 `comments` 等列。它将按照 `date` 列的年份进行分区,并对每个分区添加了注释。表本身也有一个表注释。