PG_INDEX
PG_INDEX records part of the information about indexes. The rest is mostly in PG_CLASS.
| Name | Type | Description |
|---|---|---|
| indexrelid | oid | OID of the pg_class entry for this index |
| indrelid | oid | OID of the pg_class entry for the table this index is for |
| indnatts | smallint | Number of columns in an index |
| indisunique | Boolean | This index is a unique index if the value is true. |
| indisprimary | Boolean | This index represents the primary key of the table if the value is true. If this value is true, the value of indisunique is true. |
| indisexclusion | Boolean | This index supports exclusion constraints if the value is true. |
| indimmediate | Boolean | A uniqueness check is performed upon data insertion if the value is true. |
| indisclustered | Boolean | The table was last clustered on this index if the value is true. |
| indisusable | Boolean | This index supports insert/select if the value is true. |
| indisvalid | Boolean | This index is valid for queries if the value is true. If this column is false, this index is possibly incomplete and must still be modified by INSERT/UPDATE operations, but it cannot safely be used for queries. If it is a unique index, the uniqueness property is also not true. |
| indcheckxmin | Boolean | If the value is true, queries must not use the index until the xmin of this row in pg_index is below their TransactionXmin event horizon, because the table may contain broken HOT chains with incompatible rows that they can see. |
| indisready | Boolean | If the value is true, this index is ready for inserts. If the value is false, this index is ignored when data is inserted or modified. |
| indkey | int2vector | This is an array of indnatts values that indicate which table columns this index creates. For example, a value of 1 3 means that the first and the third columns make up the index key. 0 in this array indicates that the corresponding index attribute is an expression over the table columns, rather than a simple column reference. |
| indcollation | oidvector | ID of each column used by the index |
| indclass | oidvector | For each column in the index key, this column contains the OID of the operator class to use. For details, see PG_OPCLASS. |
| indoption | int2vector | Array of values that store per-column flag bits. The meaning of the bits is defined by the index's access method. |
| indexprs | pg_node_tree | Expression trees (in nodeToString() representation) for index attributes that are not simple column references. It is a list with one element for each zero entry in INDKEY. NULL if all index attributes are simple references. |
| indpred | pg_node_tree | Expression tree (in nodeToString() representation) for partial index predicate. If the index is not a partial index, the value is null. |
Last Article: PG_FOREIGN_TABLE
Next Article: PG_INHERITS
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.