MySQL 的PARTITION BY LIST和HASH
分区的列是不是只支持INT类型

解决方案 »

  1.   

    注释:在MySQL 5.1中,当使用LIST分区时,有可能只能匹配整数列表。 “expr”还可以是MySQL 中有效的任何函数或其他表达式,只要它们返回一个既非常数、也非随机数的整数。(参考手册上面说得比较清楚。
      

  2.   

    5.5后可以支持别的类型  zz联机文档you can use string types, DATE, and DATETIME columnsmysql> CREATE TABLE customers_1 (
        first_name VARCHAR(25),
        last_name VARCHAR(25),
        street_1 VARCHAR(30),
        street_2 VARCHAR(30),
        city VARCHAR(15),
        renewal DATE
    )
    PARTITION BY LIST COLUMNS(city) (
        PARTITION pRegion_1 VALUES IN('Oskarshamn', 'Högsby', 'Mönsterås'),
        PARTITION pRegion_2 VALUES IN('Vimmerby', 'Hultsfred', 'Västervik'),
        PARTITION pRegion_3 VALUES IN('Nässjö', 'Eksjö', 'Vetlanda'),
        PARTITION pRegion_4 VALUES IN('Uppvidinge', 'Alvesta', 'Växjo')
    );Query OK, 0 rows affectedmysql>