查询单个表
select pg_size_pretty(pg_relation_size(\'table_name\'));
按size大小排序列出所有表
SELECT table_schema || \'.\' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size(\'"\' ||table_schema || \'"."\' || table_name || \'"\')) AS size FROM information_schema.tables ORDER BY pg_total_relation_size(\'"\' || table_schema || \'"."\' || table_name || \'"\') DESC limit 20
按照size大小分别列出所有表的table和index
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