pg_clear_relation_stats()

用于清除表级统计信息的函数
此条目与 PostgreSQL 的一项功能相关,该功能是 PostgreSQL 18 的一部分,预计将于 2025 年底发布。

pg_clear_relation_stats() 是一个系统函数,用于重置关系的表级统计信息,使其处于与关系新创建时相同的状态。此函数主要用于测试和调试目的。

pg_clear_relation_stats()PostgreSQL 18 中添加。

用法

pg_clear_relation_stats ( relation regclass ) → void

pg_clear_relation_stats() 可以由数据库所有者或具有 MAINTAIN 权限的角色执行。

更改历史记录

示例

pg_clear_relation_stats() 的基本用法示例

postgres=# SELECT relpages, reltuples, relallvisible
             FROM pg_class
            WHERE oid = 'test'::regclass;
 relpages | reltuples | relallvisible 
----------+-----------+---------------
        0 |       400 |             4
(1 row)

postgres=# SELECT pg_clear_relation_stats('test');
 pg_clear_relation_stats 
-------------------------

(1 row)

postgres=# SELECT relpages, reltuples, relallvisible
             FROM pg_class
            WHERE oid = 'test'::regclass;
 relpages | reltuples | relallvisible 
----------+-----------+---------------
        0 |        -1 |             0
(1 row)

请注意,如果对表执行了任何 VACUUMANALYZEautovacuum,则 pg_clear_relation_stats() 清除的统计信息将被更新。

postgres=# ANALYZE test ;
ANALYZE

postgres=# SELECT relpages, reltuples, relallvisible
             FROM pg_class
            WHERE oid = 'test'::regclass;
 relpages | reltuples | relallvisible 
----------+-----------+---------------
        0 |         0 |             0
(1 row)

分类

服务器统计信息系统函数

另请参阅

pg_set_relation_stats()pg_restore_relation_stats()pg_clear_attribute_stats()

反馈

提交您对 "pg_clear_relation_stats()" 的任何评论、建议或更正 此处