O catálogo pg_index contém parte das informações sobre índices. O restante se encontra, em sua maioria, em pg_class.
Tabela 42-16. Colunas de pg_index
| Nome | Tipo | Referencia | Descrição |
|---|---|---|---|
| indexrelid | oid | pg_class.oid | OID da entrada em pg_class para este índice |
| indrelid | oid | pg_class.oid | OID da entrada em pg_class da tabela a que este índice se destina |
| indkey | int2vector | pg_attribute.attnum | Matriz de valores indnatts (contendo até INDEX_MAX_KEYS), indicando quais colunas da tabela este índice indexa. Por exemplo, o valor 1 3 significa que a primeira e a terceira coluna da tabela compõem a chave do índice. Um zero nesta matriz indica que o atributo do índice correspondente é uma expressão contendo colunas da tabela, em vez de uma simples referência à coluna. |
| indclass | oidvector | pg_opclass.oid | Contém o OID da classe de operadores a ser utilizada para cada coluna presente na chave do índice. Consulte pg_opclass para obter mais detalhes. |
| indnatts | int2 | Número de colunas no índice (duplica pg_class.relnatts) | |
| indisunique | bool | Se for verdade, então o índice é único | |
| indisprimary | bool | Se for verdade, este índice representa a chave primária da tabela (A coluna indisunique deve ser sempre verdade quando esta coluna for verdade) | |
| indisclustered | bool | Se for verdade, a tabela foi agrupada na última vez por este índice | |
| indexprs | text | Árvores de expressão (na representação nodeToString()) para os atributos do índice que não são simplesmente referências a colunas. É uma lista com um elemento para cada entrada igual a zero em indkey. Nulo se todos os atributos do índice são simplesmente referências a colunas. | |
| indpred | text | Árvore de expressão (na representação nodeToString()) para predicado de índice parcial. Nulo se não for um índice parcial |