创建MySQL分区后,是否需要特殊查询才能利用它?

问题描述

关于MysqL / MariaDB分区,我是一个新手,还没有创建分区,但是正在阅读。我的第一个问题是,如果我根据dt_created DATETIME列按年然后按月对表进行分区,是否需要更改执行SQL查询的方式,以便在执行操作时开始看到性能提高dt_created的单日查询?或者,执行标准查询,例如:

SELECT * FROM web_tracking_events where dt_created >= '(some time goes here)'

做得好吗?

解决方法

基本上。您可以执行以下查询:

SELECT * FROM web_tracking_events where dt_created >= '(some time goes here)'

这称为修剪。参见https://dev.mysql.com/doc/refman/8.0/en/partitioning-pruning.html

但是,这意味着mysql将打开所有分区,以检查是否在此处找到匹配项。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...