mysql range分区指的是什么
1、基于给定区间边界,得到若干个连续区间范围,按照分区键的落点,把数据分配到不同的分区。
range分区主要用于日期列的分区。
2、range分区通过使用PARTITION BY RANGE(expr)实现 。
其中expr可以是某个列值,或一个基于某个列值并返回一个整数值的表达式,如YEAR(date)。
实例
CREATE TABLE `Order` ( `id` INT NOT NULL AUTO_INCREMENT, `partition_key` INT NOT NULL, `amt` DECIMAL(5) NULL) PARTITION BY RANGE(partition_key) PARTITIONS 5( PARTITION part0 VALUES LESS THAN(201901), PARTITION part1 VALUES LESS THAN(201902), PARTITION part2 VALUES LESS THAN(201903), PARTITION part3 VALUES LESS THAN(201904), PARTITION part4 VALUES LESS THAN(201905), PARTITION part4 VALUES LESS THAN MAXVALUE; INSERT INTO `Order` (`id`, `partition_key`, `amt`) VALUES ('1', '201901', '1000'); INSERT INTO `Order` (`id`, `partition_key`, `amt`) VALUES ('2', '201902', '800'); INSERT INTO `Order` (`id`, `partition_key`, `amt`) VALUES ('3', '201903', '1200');