📜  postgres 显示数据库 - SQL (1)

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

Postgres 显示数据库 - SQL

在 PostgreSQL 中,可以使用 SQL 语句来显示数据库和其中的表。以下是一些在 PostgreSQL 中使用的 SQL 查询,用于显示数据库和表。

显示所有数据库

要显示所有数据库和相关细节,操作者可以使用以下 SQL 查询语句:

SELECT datname, pg_size_pretty(pg_database_size(datname)) AS size,
    pg_database_encoding(datname) AS encoding
FROM pg_database
ORDER BY size DESC;

查询结果将显示数据库的名称、大小和编码方式。查询结果将按大小降序排序,并仅显示实际数据库大小而不包括索引和临时文件。

显示所有表

要显示所有表和数据库中的表的详细信息,您可以使用以下 SQL 查询语句:

SELECT table_schema, table_name, table_type,
    pg_size_pretty(pg_table_size('"' || table_schema || '"."' || table_name || '"')) AS size
FROM information_schema.tables
WHERE table_schema NOT IN ('pg_catalog', 'information_schema')
ORDER BY size DESC;

查询结果将显示表的模式、名称、类型和大小。查询结果将按大小降序排序。

显示表信息

要显示有关特定表的详细信息,操作者可以使用以下 SQL 查询语句:

SELECT column_name, data_type, character_maximum_length, is_nullable
FROM information_schema.columns
WHERE table_name = 'table_name';

在查询中,请更改“table_name”以指示感兴趣的表。查询结果将显示表的列名称、数据类型、最大字符长度和是否为 NULL 的信息。

显示表索引

要显示有关特定表的索引信息,您可以使用以下 SQL 查询语句:

SELECT indexname, indexdef
FROM pg_indexes
WHERE tablename = 'table_name';

在查询中,请更改“table_name”以指示感兴趣的表。查询结果将显示与表相关联的索引名称和定义。

这些是在 PostgreSQL 中显示数据库和表的一些SQL查询。这些查询可用于查看有关数据库和表的各种详细信息,这对于数据库管理和优化非常有用。