pg_indexes 是一个 系统目录 视图,列出了当前数据库中可用的索引。
pg_indexes 在 PostgreSQL 6.4 中被添加。
用法
pg_indexes 提供了一个人类可读的视图,显示了系统目录表 pg_index 的部分内容。
按 PostgreSQL 版本定义
pg_indexes (PostgreSQL 19)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 18)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 17)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 16)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 15)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 14)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 13)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 12)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 11)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 10)
View "pg_catalog.pg_indexes"
Column | Type | Collation | Nullable | Default
------------+------+-----------+----------+---------
schemaname | name | | |
tablename | name | | |
indexname | name | | |
tablespace | name | | |
indexdef | text | | |
文档: pg_indexes
pg_indexes (PostgreSQL 9.6)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.5)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.4)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.3)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.2)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.1)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 9.0)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
文档: pg_indexes
pg_indexes (PostgreSQL 8.4)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
View definition:
SELECT n.nspname AS schemaname, c.relname AS tablename, i.relname AS indexname, t.spcname AS tablespace, pg_get_indexdef(i.oid) AS indexdef
FROM pg_index x
JOIN pg_class c ON c.oid = x.indrelid
JOIN pg_class i ON i.oid = x.indexrelid
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_tablespace t ON t.oid = i.reltablespace
WHERE c.relkind = 'r'::"char" AND i.relkind = 'i'::"char";
文档: pg_indexes
pg_indexes (PostgreSQL 8.3)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
View definition:
SELECT n.nspname AS schemaname, c.relname AS tablename, i.relname AS indexname, t.spcname AS tablespace, pg_get_indexdef(i.oid) AS indexdef
FROM pg_index x
JOIN pg_class c ON c.oid = x.indrelid
JOIN pg_class i ON i.oid = x.indexrelid
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_tablespace t ON t.oid = i.reltablespace
WHERE c.relkind = 'r'::"char" AND i.relkind = 'i'::"char";
文档: pg_indexes
pg_indexes (PostgreSQL 8.2)
View "pg_catalog.pg_indexes"
Column | Type | Modifiers
------------+------+-----------
schemaname | name |
tablename | name |
indexname | name |
tablespace | name |
indexdef | text |
View definition:
SELECT n.nspname AS schemaname, c.relname AS tablename, i.relname AS indexname, t.spcname AS "tablespace", pg_get_indexdef(i.oid) AS indexdef
FROM pg_index x
JOIN pg_class c ON c.oid = x.indrelid
JOIN pg_class i ON i.oid = x.indexrelid
LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
LEFT JOIN pg_tablespace t ON t.oid = i.reltablespace
WHERE c.relkind = 'r'::"char" AND i.relkind = 'i'::"char";
文档: pg_indexes
变更历史
- PostgreSQL 8.0
- 添加了
tablespace列(提交 4690cc9c)
- 添加了
- PostgreSQL 7.3
- 添加了列
schemaname(提交 3b78826b)
- 添加了列
- PostgreSQL 6.4
- 添加(提交 f93b6974)
示例
示例 pg_indexes 条目
postgres=# CREATE TABLE foo (id INT PRIMARY KEY, val TEXT); CREATE TABLE postgres=# SELECT * FROM pg_indexes WHERE indexname = 'foo_pkey'\gx -[ RECORD 1 ]----------------------------------------------------------- schemaname | public tablename | foo indexname | foo_pkey tablespace | indexdef | CREATE UNIQUE INDEX foo_pkey ON public.foo USING btree (id)
参考资料
- PostgreSQL 文档: pg_indexes
