【问题标题】:mysql partition by range on day time stamp issuemysql 在日期时间戳问题上按范围分区
【发布时间】:2012-08-06 04:27:35
【问题描述】:

我在使用 datetime 列上的按范围分区对表进行分区时遇到问题。

测试搜索结果仍在全分区扫描中。

我在网上看到了一些关于这个问题的帖子,但不确定是否有任何方法可以解决它或绕过这个问题。

mysql 服务器:Percona 5.5.24-55.

表:

id bigint(20) 无符号非空, time 数据时间无符号非空, …… ....

密钥id_time (id,time)

engine=InnoDB

分区声明:

更改表摘要_201204 按范围划分(天(time)) 按键子分区(id) 子分区 5 ( 分区 p0 值小于 (6), 分区 p1 值小于 (11), 分区 p2 值小于 (16), 分区 p3 值小于 (21), 分区 p4 值小于 (26), 分区 p5 值小于 (MAXVALUE) );

检查: 解释分区 select * from summary_201204 where time

结果:p0_p0sp0,p0_p0sp1,p0_p0sp2,p0_p0sp3,p0_p0sp4,p1_p1sp0,p1_p1sp1,p1_p1sp2,p1_p1sp3,p1_p1sp4,p2_p2sp0,p2_p2sp1,p2_p2sp2,p2_p2sp3,p2_p2sp4,p3_p3sp0,p3_p3sp1,p3_p3sp2,p3_p3sp3,p3_p3sp4,p4_p4sp0,p4_p4sp1,p4_p4sp2 ,p4_p4sp3,p4_p4sp4,p5_p5sp0,p5_p5sp1,p5_p5sp2,p5_p5sp3,p5_p5sp4。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    我想这就是答案:访问enter link description here

    所以,mysql官网的文档对分区所需的数据类型不够清楚。在这种情况下,如果表数据类型是datetime,那么我们应该使用to_seconds,而如果数据类型是DATE,那么我们可以使用YEA

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-31
      相关资源
      最近更新 更多