为表和索引保留的统计信息

优化器可评估查询计划的执行成本的精确程度取决于查询优化器可用的信息。使用 UPDATE STATISTICS 语句来维护有关表及其相关联索引的简单统计信息。更新的统计信息为查询优化器提供信息,该信息可以使执行那个表上的查询所需的时间最短。

当某个表创建时,数据库服务器将启动该表的统计概要文件,且在发出 UPDATE STATISTICS 语句时会刷新该概要文件。 查询优化器不会自动重新计算表的概要文件。在某些情况下,收集统计信息花费的时间可能比执行查询花费的时间要长。

为了确保优化器选择一个最能反映表当前状态的查询计划,应定期运行 UPDATE STATISTICS。 有关准则,请参阅未自动生成统计信息时更新统计信息

优化器在其创建查询计划时使用以下系统目录信息:
优化器还使用以下有关索引的系统目录信息:

由于极值可能有与列中其余数据不相关的特殊含义,所以只记录次最大和次最小键值。数据库服务器假定键值在次最大和次最小值之间均匀分布。只存储这些键的前 4 个字节。如果您为与某个索引相关联的列创建了分布,那么优化器将在估计与查询相匹配的行数时使用那个分布。

有关系统目录表的更多信息,请参阅《GBase 8s SQL 指南:参考》。