在 PostgreSQL 中,CREATE STATISTICS 语句用于创建统计信息对象,以便优化查询计划。统计信息是关于表中数据分布和结构的摘要信息,可帮助 PostgreSQL 查询优化器生成更有效的查询计划。

以下是 CREATE STATISTICS 语句的基本语法:
CREATE STATISTICS statistics_name
   (expression [, ...])
   [ (options) ]
   FOR TABLE table_name [, ...] [WITH (statistics_parameters)];

其中:
  •  statistics_name 是要创建的统计信息对象的名称。

  •  expression 是一个或多个用于生成统计信息的表达式。

  •  table_name 是要收集统计信息的表名。

  •  options 是统计信息的选项。

  •  statistics_parameters 是指定统计信息参数的部分。


以下是一个简单的例子,创建一个名为 salary_stats 的统计信息,用于表 employee 中的 salary 列:
CREATE STATISTICS salary_stats
   (histogram_bounds, most_common_vals, most_common_freqs, null_frac)
   FOR TABLE employee
   FROM salary WITH (ndistinct = 100);

这个例子中,统计信息 salary_stats 包含 histogram_bounds、most_common_vals、most_common_freqs 和 null_frac,用于收集关于 employee 表中 salary 列的统计信息。WITH (ndistinct = 100) 指定了一个可选参数,用于设置估计的不同值的数量。

请根据实际情况调整语句以适应你的数据库和表结构。


转载请注明出处:http://www.zyzy.cn/article/detail/8677/PostgreSQL