postgres查询列出所有表名称

有没有任何查询可以列出我的Postgres数据库中的所有表。

我尝试了一个查询,如:

SELECT table_name FROM information_schema.tables WHERE table_schema='public' 

但是这个查询也返回视图。

我怎样才能得到只有表名,而不是意见?

什么回合这个查询(基于手册的说明)?

 SELECT table_name FROM information_schema.tables WHERE table_schema='public' AND table_type='BASE TABLE'; 

用你想要的数据库打开postgresterminal:

 psql dbname (run this line in a terminal) 

然后在postgres环境中运行这个命令

 \d 

这将按名称描述所有表格。 基本上按名称升序列表。

那么你可以试试这个按字段来描述一个表格:

 \d tablename. 

希望这可以帮助。

如果你想要数据库的列表

 SELECT datname FROM pg_database WHERE datistemplate = false; 

如果你想要所有数据库的当前pg安装表的列表

 SELECT table_schema,table_name FROM information_schema.tables ORDER BY table_schema,table_name; 
 select relname as table from pg_stat_user_tables where schemaname = 'public' 
  • 如果track_activities被禁用,这将不起作用

 select tablename as table from pg_tables where schemaname = 'public' 
  • 阅读更多关于pg_tables

如何在psql提供\dt ? 请参阅https://www.postgresql.org/docs/current/static/app-psql.html