MySQL支持分区表,这允许将大型数据集分割成更小、更易管理的部分。分区表可以提高查询性能,因为查询可以仅在所需的分区上运行,并且可以简化数据维护,例如删除旧数据。
以下是创建分区表的基本步骤:
选择分区类型:
RANGE分区:基于列值将数据划分到不同的分区。
LIST分区:基于列值列表将数据划分到不同的分区。
HASH分区:基于列值的哈希函数将数据划分到不同的分区。
KEY分区:类似于HASH分区,使用MySQL内部的哈希函数。
创建分区表:
例如,以下是一个使用RANGE分区的表的创建示例,该表按照某个列的值范围进行分区:
CREATE TABLE employees (
id INT,
name VARCHAR(100),
hired_date DATE
)
PARTITION BY RANGE ( YEAR(hired_date) ) (
PARTITION p0 VALUES LESS THAN (1991),
PARTITION p1 VALUES LESS THAN (1996),
PARTITION p2 VALUES LESS THAN (2001),
PARTITION p3 VALUES LESS THAN (2006),
PARTITION p4 VALUES LESS THAN MAXVALUE
);
================================
查询分区
select * from tab1 partition(p1);
=========================================
清理分区重建
最好备份一下这个表,再执行:
alter table pbm_mis_visa_history_summary_mid_9999 remove partitioning;
alter table pbm_mis_visa_history_summary_mid_999 /*!50500 PARTITION BY LIST COLUMNS(pbm_batch_date)
(PARTITION p20230223 VALUES IN ('2023-02-23') ENGINE = InnoDB,
PARTITION p20230224 VALUES IN ('2023-02-24') ENGINE = InnoDB,
PARTITION p20230225 VALUES IN ('2023-02-25') ENGINE = InnoDB) */;
MySQL支持分区表,这允许将大型数据集分割成更小、更易管理的部分。分区表可以提高查询性能,因为查询可以仅在所需的分区上运行,并且可以简化数据维护,例如删除旧数据。
以下是创建分区表的基本步骤:
-
选择分区类型:
-
RANGE分区:基于列值将数据划分到不同的分区。
-
LIST分区:基于列值列表将数据划分到不同的分区。
-
HASH分区:基于列值的哈希函数将数据划分到不同的分区。
-
KEY分区:类似于HASH分区,使用MySQL内部的哈希函数。
-
-
创建分区表:
例如,以下是一个使用RANGE分区的表的创建示例,该表按照某个列的值范围进行分区:
标签:LESS,分区,PARTITION,分区表,VALUES,mysql,列值 From: https://www.cnblogs.com/myxinyang/p/18350432