【说站】mysql range分区是什么

2022-11-24 17:15:55 浏览数 (1)

mysql range分区是什么

1、基于给定区间边界,得到若干个连续区间范围,按照分区键的落点,把数据分配到不同的分区。

range分区主要用于日期列的分区。

2、range分区通过使用PARTITION BY RANGE(expr)实现 。

其中expr可以是某个列值,或一个基于某个列值并返回一个整数值的表达式,如YEAR(date)。

实例

代码语言:javascript复制
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');

以上就是mysql range分区的介绍,希望对大家有所帮助。更多mysql学习指路:MySQL

推荐操作系统:windows7系统、mysql5.8、DELL G3电脑

0 人点赞