PG_INDEXES
PG_INDEXES视图提供对数据库中每个索引的有用信息的访问。
名称 |
类型 |
引用 |
描述 |
---|---|---|---|
schemaname |
name |
PG_NAMESPACE.nspname |
包含表和索引的模式名。 |
tablename |
name |
PG_CLASS.relname |
此索引所服务的表名。 |
indexname |
name |
PG_CLASS.relname |
索引名。 |
tablespace |
name |
PG_TABLESPACE.spcname |
包含索引的表空间名称。 |
indexdef |
text |
- |
索引定义(一个重建的CREATE INDEX命令)。 |
应用示例
查询指定表的索引信息。
1 2 3 4 5 |
SELECT * FROM pg_indexes WHERE tablename = 'mytable'; schemaname | tablename | indexname | tablespace | indexdef ------------+-----------+----------------+------------+------------------------------------------------------------------------------- public | mytable | idx_mytable_id | | CREATE INDEX idx_mytable_id ON mytable USING btree (id) TABLESPACE pg_default (1 row) |
查询当前数据库指定模式下所有表的索引信息。
1 2 3 4 5 6 7 8 9 10 |
SELECT tablename, indexname, indexdef FROM pg_indexes WHERE schemaname = 'public' ORDER BY tablename,indexname; tablename | indexname | indexdef -----------+--------------------+----------------------------------------------------------------------------------------------------- books | books_pkey | CREATE UNIQUE INDEX books_pkey ON books USING btree (id) TABLESPACE pg_default books | idx_books_tags_gin | CREATE INDEX idx_books_tags_gin ON books USING gin (tags) TABLESPACE pg_default customer | c_custkey_key | CREATE UNIQUE INDEX c_custkey_key ON customer USING btree (c_custkey, c_name) TABLESPACE pg_default mytable | idx_mytable_id | CREATE INDEX idx_mytable_id ON mytable USING btree (id) TABLESPACE pg_default test1 | idx_test_id | CREATE INDEX idx_test_id ON test1 USING btree (id) TABLESPACE pg_default v0 | v0_pkey | CREATE UNIQUE INDEX v0_pkey ON v0 USING btree (c) TABLESPACE pg_default (6 rows) |