PostgreSQL如何查询表大小(单独查询和批量查询)
更新时间:2024年02月03日 09:05:58 作者:阿福Chris
PostgreSQL提供了多个系统管理函数来查看表,索引表空间及数据库的大小,这篇文章主要给大家介绍了关于PostgreSQL如何查询表大小的相关资料,文中介绍的方法包括单独查询和批量查询,需要的朋友可以参考下
前言
查询 PG 表的大小通常需要使用函数/视图来实现,分为单独查询和批量查询的场景,下面简单列一下:
1. 单表大小查询
如果要查询单个表的大小,可以使用常用的函数,参考语句如下:
select pg_size_pretty(pg_relation_size('表名'));
注意:这个查询结果不包括索引大小,如果要查询索引大小,可以通过查询 information_schema.tables 来获取
2.所有数据库表大小批量查询
如果要查询所有表的大小,包括索引,那么最方便的就是直接查询 information_schema.tables 表了,可以参考如下查询语句:
select
table_name,
pg_size_pretty(table_size) as table_size,
pg_size_pretty(indexes_size) as indexes_size,
pg_size_pretty(total_size) as total_size
from
(
select
table_name,
pg_table_size(table_name) as table_size,
pg_indexes_size(table_name) as indexes_size,
pg_total_relation_size(table_name) as total_size
from
(
select
('"' || table_schema || '"."' || table_name || '"') as table_name
from
information_schema.tables
) as all_tables
order by
total_size desc
) as pretty_sizes;附:查询数据库大小
-- 查询单个数据库大小
select pg_size_pretty(pg_database_size('postgres')) as size;
-- 查询所有数据库大小
select datname, pg_size_pretty (pg_database_size(datname)) AS size from pg_database;
总结
到此这篇关于PostgreSQL如何查询表大小的文章就介绍到这了,更多相关PostgreSQL查询表大小内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
相关文章
PostgreSQL通过mysql_fdw实现 MySQL 透明查询功能
mysql_fdw是一个PostgreSQL的FDW扩展,由EnterpriseDB开发并开源,它通过MySQL客户端库连接远程 MySQL实例,并将远程表映射为PostgreSQL中的外部表本文配置mysql_fdw,实现PostgreSQL对MySQL表的透明读写访问,真正做到“一处查询,跨库联动”,感兴趣的朋友跟随小编一起看看吧2026-02-02
postgresql数据库安装部署搭建主从节点的详细过程(业务库)
这篇文章主要介绍了postgresql数据库安装部署搭建主从节点的详细过程(业务库),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-01-01


最新评论