因为我们没有使用COLUMNS关键字,我们也不能使用它,因为它不支持混合列和函数,表定义中的记录值就是TO_SECONDS函数的计算结果。
但我们还是要感谢新的函数,我们可以反推这个值,换算成一个更容易读懂的日期。
select
partition_name part, partition_expression expr,
from_seconds(partition_description) descr,
table_rows FROM INFORMATION_SCHEMA.partitions WHERE TABLE_SCHEMA = 'test'
AND TABLE_NAME='t2';
+------+----------------+---------------------+------------+
| part | expr |descr | table_rows |
partition_name part, partition_expression expr,
from_seconds(partition_description) descr,
table_rows FROM INFORMATION_SCHEMA.partitions WHERE TABLE_SCHEMA = 'test'
AND TABLE_NAME='t2';
+------+----------------+---------------------+------------+
| part | expr |descr | table_rows |
+------+----------------+---------------------+------------+
| p01 | to_seconds(dt) | 2009-11-30 08:00:00 | 0 |
| p02 | to_seconds(dt) | 2009-11-30 16:00:00 | 0 |
| p03 | to_seconds(dt) | 2009-12-01 00:00:00 | 0 |
| p04 | to_seconds(dt) | 2009-12-01 08:00:00 | 0 |
| p05 | to_seconds(dt) | 2009-12-01 16:00:00 | 0 |
| p06 | to_seconds(dt) | 0000-00-00 00:00:00 | 0 |
+------+----------------+---------------------+------------+
总结
MySQL 5.5对分区用户绝对是个好消息,虽然没有提供直接的性能增强的方法(如果你按响应时间评估性能),但更易于使用的增强功能,以及TRUNCATE PARTITION命令都可以为DBA节省大量的时间,有时对最终用户亦如此。
这些增强的功能可能会在下一个里程碑发布时得到更新,最终版本预计会在2010年年中发布,届时所有分区用户都可以尝试一下!