ANALYZE TABLE¶
ANALYZE TABLE 为一个或多个表收集统计信息,可选择性限制到列列表,使查询优化器在选择执行计划时拥有最新信息。
描述¶
ANALYZE TABLE 计算并存储指定表的统计信息。这些统计信息帮助查询优化器估算基数并选择更好的计划。
该语句支持三种形式:
ANALYZE TABLE t;使用所有列分析整个表。ANALYZE TABLE t(a, b);仅分析指定列。ANALYZE TABLE t1, t2;在一条语句中分析多个表。
支持带引号的数据库、表和列标识符。
语法¶
ANALYZE TABLE table [(column [, column] ...)] [, table [(column [, column] ...)] ...]
参数¶
参数 |
说明 |
|---|---|
|
要分析的表。 |
|
可选。参与分析的表的列。省略时分析所有列。 |
示例¶
DROP DATABASE IF EXISTS analyze_table_demo;
CREATE DATABASE analyze_table_demo;
USE analyze_table_demo;
CREATE TABLE t_analyze (a INT, b VARCHAR(10));
INSERT INTO t_analyze VALUES (1, 'a'), (1, 'a'), (2, 'b'), (2, 'c');
ANALYZE TABLE t_analyze(a, b);
ANALYZE TABLE t_analyze;
DROP DATABASE analyze_table_demo;