indexrelid | oid | pg_class.oid | The OID of the pg_class entry for this index |
indrelid | oid | pg_class.oid | The OID of the pg_class entry for the table this index is for |
indnatts | int2 | | The number of columns in the index (duplicates
pg_class.relnatts) |
indisunique | bool | | If true, this is a unique index |
indisprimary | bool | | If true, this index represents the primary key of the table.
(indisunique should always be true when this is true.) |
indisclustered | bool | | If true, the table was last clustered on this index |
indisvalid | bool | | If true, the index is currently valid for queries. False means the
index is possibly incomplete: it must still be modified by
INSERT/UPDATE operations, but it cannot safely
be used for queries. If it is unique, the uniqueness property is not
true either
|
indkey | int2vector | pg_attribute.attnum | This is an array of indnatts values that
indicate which table columns this index indexes. For example a value
of 1 3 would mean that the first and the third table
columns make up the index key. A zero in this array indicates that the
corresponding index attribute is an expression over the table columns,
rather than a simple column reference.
|
indclass | oidvector | pg_opclass.oid | For each column in the index key this contains the OID of
the operator class to use. See
pg_opclass for details
|
indexprs | text | | Expression trees (in nodeToString() representation)
for index attributes that are not simple column references. This is a
list with one element for each zero entry in indkey.
NULL if all index attributes are simple references |
indpred | text | | Expression tree (in nodeToString() representation)
for partial index predicate. NULL if not a partial index |