首页 > 数据库 > > GaussDB 100 收集表和索引的统计信息
收集有关表和索引的对象属性的统计信息。
仅允许在主机open模式下执行。
SYS用户和DBA可以收集、删除所有用户或对象的统计信息。普通用户可以收集自己或自己的表的统计信息,具备ANALYZE ANY权限可操作除SYS外所有用户的统计信息。
收集表统计信息
ANALYZE { TABLE [ schema_name. ] table_name COMPUTE STATISTICS} [ FOR REPORT [SAMPLE sample_percent ] ]收集索引统计信息
ANALYZE { INDEX [ schema_name. ] index_name { COMPUTE STATISTICS | ESTIMATE STATISTICS sample_percent }[schema_name.]table_name
要获取统计信息的表名,不能和用户下表重名。
COMPUTE STATISTICS
固定语法,无特殊含义。
ESTIMATE STATISTICS sample_percent
采样收集, sample_percent为采样率,范围[0,100]的整数。
FOR REPORT
生成统计信息正确性检测报告,比较某个采样率下的统计信息与系统中已经收集过的统计信息的偏差率。
SAMPLE sample_percent
采样统计生成检测报告,sample_percent为采样率,范围[0,100]的整数,默认值是100。
分析收集omm用户下表名为education的统计信息。
--删除表omm.education。 DROP TABLE IF EXISTS omm.education;
--创建表omm.education。 CREATE TABLE omm.education(staff_id INT, higest_degree CHAR(8) NOT NULL, graduate_school VARCHAR(64), graduate_date DATETIME, education_note VARCHAR(70));
--分析收集omm.education的统计信息。 ANALYZE TABLE omm.education COMPUTE STATISTICS; ANALYZE TABLE omm.education COMPUTE STATISTICS FOR REPORT; ANALYZE TABLE omm.education COMPUTE STATISTICS FOR REPORT SAMPLE 10;
--创建索引。 CREATE INDEX omm.idx on omm.education(staff_id);
--分析收集omm.education的索引统计信息。 ANALYZE INDEX omm.idx COMPUTE STATISTICS; ANALYZE INDEX omm.idx ESTIMATE STATISTICS 10;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3157122/ ,如需转载,请注明出处,否则将追究法律责任。