mysql - 如何执行此 MySQL 分区?

标签 mysql database partitioning

我有一个表,其中包含从 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/

相关文章:

php - 从 Mysql 导出数据并输出到 CSV 允许另存为

php - 插入字符串的 MySQL 数据到 JSON 数组

database - 如何删除postgres中的大对象

JavaScript promise 以相反的顺序加载

oracle - PCT(分区更改跟踪)可以用于列表范围分区表吗?

hive - 如何删除 Hive 表分桶

mysql - 按最后 3 个字符排序

python - mysql.connector.connect和connection.cursor的成本

database - 测试用户数据(假数据)

c - 快速排序分区函数的参数