If you are logged in as a user whose search_path includes a schema the user has USAGE privilege on, use:
SELECT * FROM pg_indexes WHERE schemaname = current_schema();
For indexes on a specific table, in a specific schema, log onto the correct database as a privileged user:
[postgres@server1 ~]$ psql db01 db01=# \conninfo You are connected to database "db01" as user "postgres" via socket in "/run/postgresql" at port "5432".Execute the following SQL:
SELECT tablename, indexname, indexdef FROM pg_indexes WHERE schemaname = 'myuser' and tablename='mytable' ORDER BY tablename, indexname;
tablename | indexname | indexdef |
---|---|---|
mytable | idx1 | CREATE INDEX idx1 ON myschema.mytableUSING btree (col1, col2) |
mytable | idx2 | CREATE INDEX idx2 ON myschema.mytable USING btree (col3) |
Or use the psql command \d mytable, which lists the indexes after the description of the table columns
\d mytable Indexes: "pk_mytable" PRIMARY KEY, btree (col1) "idx1" btree (col1, col2) "idx2" btree (col3) "idx3" btree (col3, col4)
No comments:
Post a Comment