create table member(
id bigint auto_increment primary key, name varchar(20),
sex tinyint not null default '0',
salary int
)ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1
PARTITION BY HASH(salary) PARTITIONS 10;
ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function
create table member(
id bigint , name varchar(20),
sex tinyint not null default '0',
salary int,
UNIQUE KEY (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8
PARTITION BY HASH(salary) PARTITIONS 10;
ERROR 1503 (HY000): A UNIQUE INDEX must include all columns in the table's partitioning function
如果分区表中定义了主键或唯一约束,则分区键必须是主键或唯一约束
如果分区表中未定义主键或唯一约束,则分区键可任意定义
分区的字段必须包括主键,如果不包含还不如不分区。
查询的字段如果统一用分区键,也可采用分区