📜  列出 postgres 中的所有表 - SQL (1)

📅  最后修改于: 2023-12-03 15:22:38.967000             🧑  作者: Mango

列出 PostgreSQL 中的所有表 - SQL

如何在 PostgreSQL 中列出所有的表?在本文中,我们将介绍这个问题的答案。

解决方案

PostgreSQL 提供了一个叫做 pg_catalog 的系统目录,其中包含了所有 PostgreSQL 中的内置表和视图的定义。所以,我们可以使用如下的 SQL 查询语句来列出所有的表:

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

这个查询语句将会返回数据库中 public 模式下的所有表的列表。如果你想列出所有模式下的表,可以将查询语句中的 table_schema 条件删除即可。

注意 :如果你使用的是 PostgreSQL 版本低于 8.1,你可能需要使用以下的查询语句来列出数据库中的所有表:

SELECT relname
FROM pg_class
WHERE relkind = 'r' AND relname !~ '^(pg_|sql_)';
结论

在本文中,我们讨论了如何使用 SQL 查询语句在 PostgreSQL 中列出所有的表。无论你使用哪个版本,都可以轻松地实现这一目标。