MySQL分区表对于函数的限制


  本文标签:MySQL分区表

  MySQL分区表有着其局限性,下面就为您介绍MySQL分区表对于函数的限制,如果您对MySQL分区表方面感兴趣的话,不妨一看  。

  MySQL分区表关于函数的限制
在mysql5.1中建立分区表的语句中,MySQL分区表只能包含下列函数:
ABS()
CEILING() and FLOOR() (在使用这2个函数的建立分区表的前提是使用函数的分区键是INT类型),例如

  1. mysql> CREATE TABLE t (c FLOAT) PARTITION BY LIST( FLOOR(c) )(  
  2.     -> PARTITION p0 VALUES IN (1,3,5),  
  3.     -> PARTITION p1 VALUES IN (2,4,6)  
  4.     -> );;  
  5. ERROR 1491 (HY000): The PARTITION function returns the wrong type   
  6.  
  7. mysql> CREATE TABLE t (c int) PARTITION BY LIST( FLOOR(c) )(  
  8.     -> PARTITION p0 VALUES IN (1,3,5),  
  9.     -> PARTITION p1 VALUES IN (2,4,6)    -> );  
  10. Query OK, 0 rows affected (0.01 sec)  
  11.  

  DAY()
DAYOFMONTH()
DAYOFWEEK()
DAYOFYEAR()
DATEDIFF()
EXTRACT()
HOUR()
MICROSECOND()
MINUTE()
MOD()
MONTH()
QUARTER()
SECOND()
TIME_TO_SEC()
TO_DAYS()
WEEKDAY()
YEAR()
YEARWEEK()