我有一个表,其中包含从 1 到 32 的整数列(此列标识存储的记录类型)。
类型5和类型12代表了总行数的70%,这个数字大于1M行,所以对表进行分区似乎是有意义的。
问题是:我如何创建一组 3 个分区,一个包含 5 类记录,第二个包含 12 类记录,第三个包含剩余记录?
最佳答案
http://dev.mysql.com/doc/refman/5.1/en/partitioning-list.html
create table some_table (
id INT NOT NULL,
some_id INT NOT NULL
)
PARTITION BY LIST(some_id) (
PARTITION fives VALUES IN (5),
PARTITION twelves VALUES IN (12),
PARTITION rest VALUES IN (1,2,3,4,6,7,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32)
);
关于mysql - 如何执行此 MySQL 分区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8670295/