O catálogo pg_opclass define classes de operador de métodos de acesso a índice. Cada classe de operador define a semântica para colunas de índice de um tipo de dados específico e um método de acesso de índice específico. Uma classe de operador especifica essencialmente que uma determinada família de operador é aplicável a um determinado tipo de dados de coluna indexável. O conjunto de operadores da família que são realmente utilizáveis com a coluna indexada, são aqueles que aceitam o tipo de dados da coluna como entrada à esquerda.
As classes de operador são descritas detalhadamente em Interligação de extensões a índices.
Tabela 52.33. Colunas de pg_opclass
Coluna Tipo de dados Descrição |
|---|
Identificador da linha |
Método de acesso a índice para o qual esta classe de operador se destina |
Nome da classe de operador |
Espaço de nomes da classe de operador |
Dono da classe de operador |
Família de operador contendo a classe de operador |
Tipo de dados que a classe do operador indexa |
Verdade se esta classe de operador for a classe padrão para
|
Tipo de dados armazenados no índice,
ou zero se for igual a |
O opcmethod de uma classe de operador
deve corresponder ao opfmethod
da família de operador que a contém.
Além disso, não deve haver mais de uma linha em
pg_opclass com
opcdefault sendo verdade para qualquer
combinação de opcmethod e
opcintype.
Exemplo 52.22. Exemplo do tradutor
Classes de operador de métodos de acesso a índice
Uso do catálogo pg_opclass para mostrar as classes de operador de métodos de acesso a índice para Internet, juntamente com o nome do método de acesso e o nome da família de operador que a contém.
ana=> SELECT DISTINCT a.amname, o.opcname, f.opfname ana-> FROM pg_opclass o ana-> LEFT JOIN pg_am a ON o.opcmethod = a.oid ana-> LEFT JOIN pg_opfamily f ON o.opcfamily = f.oid ana-> WHERE o.opcname LIKE 'inet%';
Classes de operador de métodos de acesso a índice
amname | opcname | opfname
--------+-----------------------+--------------------------
brin | inet_bloom_ops | network_bloom_ops
brin | inet_inclusion_ops | network_inclusion_ops
brin | inet_minmax_multi_ops | network_minmax_multi_ops
brin | inet_minmax_ops | network_minmax_ops
btree | inet_ops | network_ops
gist | inet_ops | network_ops
hash | inet_ops | network_ops
spgist | inet_ops | network_ops
(8 linhas)