使用以下SQL语句查询Postgres数据库中的各个数据库和表占用的空间情况:

查询各个数据库占用空间大小:

SELECT
datname AS database_name,
pg_size_pretty(pg_database_size(datname)) AS size
FROM pg_database;

查询指定数据库中各个表占用空间大小:

SELECT
tablename AS table_name,
pg_size_pretty(pg_total_relation_size(tablename)) AS size
FROM pg_tables
WHERE schemaname='public'
ORDER BY size DESC;

查询所有数据库中各个表占用空间大小:

SELECT
schemaname AS schema_name,
tablename AS table_name,
pg_size_pretty(pg_total_relation_size(schemaname || '.' || tablename)) AS size
FROM pg_tables
ORDER BY size DESC;

注意,上述语句中的pg_total_relation_size函数为计算表占用的空间大小,由于不同的操作系统和文件系统,实际空间大小可能与查询结果有所不同。