现在的位置: 首页 > 综合 > 正文

mysql分区表对分区函数的限制

2013年10月25日 ⁄ 综合 ⁄ 共 663字 ⁄ 字号 评论关闭

在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()

抱歉!评论已关闭.