From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | craig(at)mysoftforge(dot)com |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Query that produces index information for a Table |
Date: | 2010-05-09 01:03:41 |
Message-ID: | 18449.1273367021@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Boyd, Craig" <craig(at)mysoftforge(dot)com> writes:
> I am trying to pull together some general information about indices
> (indexes?) for a particular table.
> I need the following: Index Name, Table Name, Column Name,
> Unique/Non-Unique, and ordinal position in the index.
> The information_schema.key_column_usage gets me most of the way there, I
> think, but does not tell me whether the index is unique and does not
> seem to differentiate between indices and other types of constraints.
The information_schema gets you *none* of the way there, actually,
because it's a creature of the SQL standard and indexes are outside the
standard (yes, really). You can find out about unique constraints from
the information_schema views, but not about non-unique indexes, nor
even indexes that are unique but weren't created via unique-constraint
syntax.
If you want to know about all indexes, you'll need to get your hands
dirty with looking at the PG system catalogs. I'd suggest looking at
the queries psql generates for \dt (use psql -E to watch these) and
then modifying them to suit your purposes.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-05-09 01:24:45 | Re: [GENERAL] psql weird behaviour with charset encodings |
Previous Message | Boyd, Craig | 2010-05-08 23:54:51 | Query that produces index information for a Table |