VALIDATE_STATISTICS
验证由
EXPORT_STATISTICS
生成的 XML 文件中的统计信息。
这是元函数。您必须在顶级 SELECT 语句中调用元函数。
行为类型
稳定语法
VALIDATE_STATISTICS ( 'XML‑file' )
参数
- XML‑file
- 包含待验证统计信息的 XML 文件的路径和名称。
超级用户
报告有效统计信息
以下示例显示了统计信息有效时的结果:
=> SELECT EXPORT_STATISTICS('cust_dim_stats.xml','customer_dimension');
EXPORT_STATISTICS
-----------------------------------
Statistics exported successfully
(1 row)
=> SELECT VALIDATE_STATISTICS('cust_dim_stats.xml');
VALIDATE_STATISTICS
---------------------
(1 row)
识别无效统计信息
如果 VALIDATE_STATISTICS
无法读取文档的 XML,则会引发以下错误:
=> SELECT VALIDATE_STATISTICS('/home/dbadmin/stats.xml');
VALIDATE_STATISTICS
----------------------------------------------------------------------------
Error validating statistics file: At line 1:1. Invalid document structure
(1 row)
如果某些表统计信息无效,VALIDATE_STATISTICS
会返回标识相关信息的报告。在以下示例中,函数报告属性 distinct
、buckets
、rows
、count
、并且 distinctCount
不能是负数。
=> SELECT VALIDATE_STATISTICS('/stats.xml');
WARNING 0: Invalid value '-1' for attribute 'distinct' under column 'public.t.x'.
Please use a positive value.
WARNING 0: Invalid value '-1' for attribute 'buckets' under column 'public.t.x'.
Please use a positive value.
WARNING 0: Invalid value '-1' for attribute 'rows' under column 'public.t.x'.
Please use a positive value.
WARNING 0: Invalid value '-1' for attribute 'count' under bound '1', column 'public.t.x'.
Please use a positive value.
WARNING 0: Invalid value '-1' for attribute 'distinctCount' under bound '1', column 'public.t.x'.
Please use a positive value.
VALIDATE_STATISTICS
---------------------
(1 row)
在这种情况下,再次对表运行
ANALYZE_STATISTICS
以创建有效统计信息。