美文网首页
mysql分区之list分区

mysql分区之list分区

作者: 无崖老师 | 来源:发表于2020-03-11 21:56 被阅读0次

list分区的语法

.....partition by list()(
partition 分区名称 values in(值1,值2,值3)
);
list分区,类似于sql的in语法,只要插入的数据符合条件的都会被放到这个分区中.

情景设置

需要指定的每个分区数据的存储条件。分区的字段一定要是主键!按照生日中的月份,分成春夏秋冬四个分区。

下面新建一个list_1表,

create table list_1(
   id mediumint unsigned auto_increment not null,
   birthday date,
   primary key (id,birthday) 
)engine=MyISAM partition by list(month(birthday))(
partition chun values in(3,4,5),
partition xia values in(6,7,8),
partition qiu values in(9,10,11),
partition dong values in(12,1,2)
 );
这里month()为月份函数,提取插入的数据的月份,根据月份然后放入chun,xia,qiu,dong四个不同的分区.
图片.png

分区创建成功之后,查看文件信息


图片.png

注意这里分为四个去,有chun,xia,qiu,dong四个分区文件,看上去就像是四个独立的表,但其实在外面依旧是一张表.

插入数据测试

insert into list_1 values(null,'1992-05-20');
insert into list_1 values(null,'1993-03-20');
insert into list_1 values(null,'1993-04-20');
insert into list_1 values(null,'1993-12-20');
插入的数据分别是chun和dong两个分区,注意观察数据的月份
图片.png

注意:chun和dong两个分区,分别放入了数据.这就说明我们的分区生效了.

总结

1 list分区就是根据分区条件,将数据分为若干区,也会生成相应的数据文件.
2 这个list()中也可以直接指定字段,但是这个字段一定要是整数.

相关文章

  • mysql表分区

    mysql表分区主要分为RANGE分区,LIST分区,HASH分区,LINEAR HASH分区,KEY分区 目前,...

  • mysql分区之list分区

    list分区的语法 .....partition by list()(partition 分区名称 values ...

  • Mysql 分区表

    MySQL分区表支持RANGE,LIST,HASH,KEY,COLUMNS多种分区算法。 分区表的唯一索引和主键索...

  • mysql 段、区、页以及分区知识点

    目录 一.InnoDB逻辑存储结构段区页 二.分区概述分区 三.分区类型RANGE分区LIST分区HASH分区KE...

  • MySQL分区表

    确认mysql是否支持分区表 mysql分区表的特点 创建mysql数据表为hash表 常用mysql分区的类型 ...

  • mysql分区之ragne分区

    range分区的概念 range分区是利用取值范围(区间)划分分区,区间要连续并且不能互相重叠,使用values ...

  • 对MySQL交换分区的实践

    前言 在介绍交换分区之前,我们先了解一下 mysql 分区。 数据库的分区有两种:水平分区和垂直分区。而MySQL...

  • mysql分库分表

    课程内容 mysql分区 水平切分 垂直切分 1. mysql分区 1.1 什么是分区? mysql数据库中的数据...

  • Hive(二) 分区表、桶

    分区表 Hive中没有复杂的分区类型(List,Range,Hash)、各种复合分区,分区列不是表中的实际字段而是...

  • Mysql分区

    介绍 Mysql5.5只支持水平分区,还不支持垂直分区。MySQL分区不能与使用 MERGE,CSV或 FEDER...

网友评论

      本文标题:mysql分区之list分区

      本文链接:https://www.haomeiwen.com/subject/nmzhjhtx.html