什么是PostgreSQL列表索引?-PostgreSQL教程|
PostgreSQL 列表索引
在本节中,我们要了解的工作列表索引从PostgreSQL数据库的帮助下SQL壳牌(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 数据库或表中的过程。
PostgreSQL 使用 psql 命令列出索引
我们将按照以下过程在psql 中列出一个表:
- 首先,我们将在本地系统中打开psql,然后我们将连接到我们要创建函数的数据库。
- 我们将在javatpoint数据库中创建一个表,我们之前在PostgreSQL 教程中创建了该表。
- 为了连接数据库,我们将输入以下命令:
c Organization
输出
执行上述命令后,我们将得到以下输出:
如果我们想列出表的所有索引并连接到PostgreSQL 数据库,我们可以使用以下 psql 命令:
d table_name
上述命令用于返回表的所有信息,包括表的结构、索引、触发器和约束。
在下面的示例中,以下命令用于获取有关employee表的完整信息:
d employee
输出
执行上述命令后,我们将得到以下输出,其中显示了索引部分下的表索引。
PostgreSQL 使用 pg_indexes 视图列出索引
在 PostgreSQL 中,pg_indexes视图可以让我们获取PostgreSQL 数据库中所有索引的重要数据。
所述pg_indexes视图包含五列,它们如下面所解释:
列 | 解释 |
---|---|
schemaname | 所述SCHEMANAME列用于存储架构,其包括索引和表的名称。 |
tablename | 该表名列用于保持表名索引属于。 |
indexname | 索引名称存储在indexname列中。 |
tablespace | 该表列用于保持表,其中涉及指标的名称。 |
indexdef | 所述indexdef列存储在的形式索引定义命令CREATE INDEX命令。 |
在下面的命令中,我们将使用我们在上表中解释的所有五列来列出现有数据库中模式 public 的所有索引:
SELECT tablename, indexname, indexdef
FROM pg_indexes
WHERE schemaname = 'public'
ORDER BY tablename, indexname;
输出
执行上述命令后,我们将得到以下输出,其中显示了在Organization数据库中创建的表的完整列表。
下图用于显示表的所有索引:
SELECT indexname, indexdef
FROM pg_indexes
WHERE tablename = 'table_name';
在以下示例中,我们尝试检索Employee表的所有索引的列表,如下面的命令所示:
SELECT indexname, indexdef
FROM pg_indexes
WHERE tablename = 'employee';
输出
执行上述命令后,我们将得到以下输出,其中显示了员工表的所有索引。
如果我们需要获取名称以字母e开头的表的索引列表,我们可以使用以下命令:
SELECT tablename, indexname, indexdef
FROM pg_indexes
WHERE tablename LIKE 'e%'
ORDER BY tablename, indexname;
输出
执行上述命令后,我们将得到以下输出,其中显示名称以字母e开头的表:
概述
在PostgreSQL 列表索引部分,我们学习了以下主题:
- 我们已经使用PostgreSQL 列表索引命令列出了 PostgreSQL 数据库中的所有索引。
- 我们已经了解了使用SQL shell(psql) 和 pg_indexes 视图等不同方法列出索引的过程。
相关文章:
- [PostgreSQL教程]PostgreSQL教程-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL特性-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL版本-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL语法-PostgreSQL教程|
- [PostgreSQL教程]在Windows上安装PostgreSQL-PostgreSQL教程|
- [PostgreSQL教程]连接到PostgreSQL数据库服务器-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL创建数据库-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL选择数据库-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL删除/删除数据库-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL创建表-PostgreSQL教程|
相关推荐:
- [PostgreSQL教程]PostgreSQL与SQLite-PostgreSQL教程|
- [PostgreSQL教程]MongoDB与PostgreSQL-PostgreSQL教程|
- [PostgreSQL教程]psqlcommands-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQLDate&TimeFunction-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQLFunctions-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQLMulti-columnIndexes-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL禁用触发器-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL左连接-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQLANDCondition-PostgreSQL教程|
- [PostgreSQL教程]PostgreSQL获取子句-PostgreSQL教程|
- PostgreSQL与SQLite-PostgreSQL教程|
- PostgreSQL与Oracle-PostgreSQL教程|
- PostgreSQL与MariaDB-PostgreSQL教程|
- PostgreSQL与SQLServer-PostgreSQL教程|
- MongoDB与PostgreSQL-PostgreSQL教程|
- PostgreSQLEXCEPT-PostgreSQL教程|
- PostgreSQLINTERSECT-PostgreSQL教程|
- PostgreSQLUnion-PostgreSQL教程|
- psqlcommands-PostgreSQL教程|
- PostgreSQLDate&TimeFunction-PostgreSQL教程|
- PostgreSQL删除触发器-PostgreSQL教程|
- PostgreSQLOrderby子句-PostgreSQL教程|
- PostgreSQL与SQLite-PostgreSQL教程|
- PostgreSQLINTERSECT-PostgreSQL教程|
- PostgreSQLAlias-PostgreSQL教程|
- PostgreSQLNot-NullConstraint-PostgreSQL教程|
- PostgreSQL与Oracle-PostgreSQL教程|
- PostgreSQL与MariaDB-PostgreSQL教程|
- MongoDB与PostgreSQL-PostgreSQL教程|
- PostgreSQLUnion-PostgreSQL教程|