PostgreSQL教程

PostgreSQL 列表索引

在本节中,我们将了解 PostgreSQL数据库中的列表索引的工作原理借助 SQL Shell(PSQL)和 pg_indexes视图。还有使用psql和pg_indexes视图列出索引的示例。

什么是PostgreSQL列表索引?

在 PostgreSQL 中,我们没有像 SHOW INDEXES 这样的命令来列出索引数据库或表的数据。
但是PostgreSQL允许以两种不同的方式访问列出索引的方法,如下所示:
SQL Shell(psql): : 如果我们使用 psql 检索PostgreSQL数据库,则使用 \ d 命令查看表的索引数据。 pg_indexes视图: pg_indexes 视图使我们能够访问PostgreSQL数据库中每个索引的有用信息。
我们现在将了解使用 psql 和 pg_indexes视图,将索引逐一列出到PostgreSQL数据库或表中。

使用psql命令的PostgreSQL列出索引

将按照以下过程在 psql 中列出表格:
首先,我们将在本地系统中打开 psql ,然后连接到要创建函数的数据库。 我们将在我们先前在 PostgreSQL教程中创建的 lidihuo 数据库中创建一个表。 要连接数据库,我们将输入以下命令:
\c Organization 
输出
执行上述命令后,我们将获得以下输出:
PostgreSQL列表索引
如果要列出表的所有索引并连接到 PostgreSQL数据库,可以使用以下psql命令:
\d table_name
上面的命令用于返回表结构为索引,触发和约束。
在下面的示例中,以下命令用于获取有关员工表的完整信息:
\d employee
输出
执行上述命令后,我们将获得以下输出,该输出在索引部分下显示表的索引。
PostgreSQL列表索引

使用pg_indexes视图的PostgreSQL列表索引

在PostgreSQL中, pg_indexes 视图使我们能够获取 PostgreSQL数据库中所有索引的重要数据。
pg_indexes视图包含五个列,如下所述:
说明
schemaname schemaname 列用于存储架构的名称,该架构包括索引和表。
tablename 表名列用于保留索引所属的表名。
indexname 索引的名称存储在 indexname 列中。
tablespace 表空间列用于保留表空间的名称,该表空间涉及索引。
indexdef indexdef 列以 CREATE INDEX 命令的形式存储索引定义命令。
在以下命令中,我们将使用上表中解释的所有五列来列出现有数据库中公共模式的所有索引:
SELECT tablename, indexname, indexdef
FROM pg_indexes
WHERE schemaname = 'public'
ORDER BY tablename, indexname;
输出
执行上述命令后,我们将获得以下输出,其中显示了在组织中创建的表的完整列表。数据库。
PostgreSQL列表索引
下图用于显示表的所有索引:
SELECT indexname, indexdef
FROM pg_indexes
WHERE tablename = 'table_name';
在以下示例中,我们尝试检索 Employee 表的所有索引的列表,如以下命令所示:
SELECT indexname, indexdef
FROM pg_indexes
WHERE tablename = 'employee';
输出
执行上述命令后,我们将获得以下输出,其中显示了 员工的所有索引表。
PostgreSQL列表索引
如果需要,可以使用以下命令获取名称以字母 e 开头的表的索引列表:
SELECT tablename, indexname, indexdef
FROM pg_indexes
WHERE tablename LIKE 'e%'
ORDER BY tablename, indexname;
输出
执行上述命令后,我们将获得以下输出,该输出显示名称以字母 e 开头的表:
PostgreSQL列表索引

概述

在在 PostgreSQL列表索引部分中,我们学习了以下主题:
我们已使用 PostgreSQL列表索引命令列出PostgreSQL数据库中的所有索引。 我们已经了解了使用 SQL shell(psql)和pg_indexes视图等不同方法列出索引的过程。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4