pg统计磁盘占用大小
在PostgreSQL中,您可以使用pg_relation_size()
函数来获取特定数据库表或索引的大小。如果您想要获取整个数据库的大小,可以使用pg_database_size()
函数。另外,pg_total_relation_size()
函数可以用来获取表及其索引的总大小。
以下是一个SQL查询示例,用于获取特定数据库表的大小:
SELECT pg_relation_size('schema_name.table_name');
如果您想获取数据库的总大小,可以使用:
SELECT pg_database_size('database_name');
如果您想获取包括索引在内的表的总大小,可以使用:
SELECT pg_total_relation_size('schema_name.table_name');
请注意,您需要将schema_name
和table_name
替换为实际的模式名和表名。如果您想要获取所有表的大小总和,您可以使用循环或者聚合查询来实现。
以下是一个获取所有表大小总和的示例SQL查询:
SELECT SUM(pg_relation_size(schemaname || '.' || tablename)) AS total_size
FROM pg_tables
WHERE schemaname NOT IN ('pg_catalog', 'information_schema');
这个查询会排除系统表,并计算除系统数据库(pg_catalog
和information_schema
)之外所有用户定义表的大小总和。
评论已关闭