How to get index column names of a table from PostgreSQL

by

select i.relname as index_name, a.attname as column_name
from pg_class t, pg_class i, pg_index ix, pg_attribute a, pg_namespace n
where t.oid = ix.indrelid and i.oid = ix.indexrelid and a.attrelid = t.oid
and a.attnum = ANY(ix.indkey) and n.oid=t.relnamespace and t.relkind = 'r'
and t.relname='my_table_name'
and n.nspname='my_schema_name'

See also:

How to get index column names of a table from DB2

How to get index column names of a table from SQL Server

How to get index column names of a table from MySQL

How to get index column names of a table from SQLite

How to get index column names of a table from Oracle

Some PostgreSQL tools you can try: https://www.withdata.com/postgresql/