51.33. pg_opclass

В каталоге pg_opclass определяются классы операторов для индексных методов доступа. Каждый класс операторов устанавливает конкретную операцию для индексируемых столбцов определённого типа данных и определённого метода доступа. Класс операторов по сути устанавливает, что некоторое семейство операторов применимо к определённому индексируемому типу столбца. Набор операторов из семейства, которые действительно можно использовать с индексируемым столбцом, образуют те, что принимают тип данных столбца в качестве левого операнда.

Классы операторов углублённо рассматриваются в Разделе 37.15.

Таблица 51.33. Столбцы pg_opclass

ИмяТипСсылкиОписание
oidoid Идентификатор строки (скрытый атрибут; должен выбираться явно)
opcmethodoidpg_am.oidИндексный метод доступа, для которого создан этот класс операторов
opcnamename Имя этого класса операторов
opcnamespaceoidpg_namespace.oidПространство имён этого класса операторов
opcowneroidpg_authid.oidВладелец класса операторов
opcfamilyoidpg_opfamily.oidСемейство операторов, содержащее этот класс операторов
opcintypeoidpg_type.oidТип данных, индексируемый данным классом операторов
opcdefaultbool True, если этот класс операторов применяется по умолчанию для opcintype
opckeytypeoidpg_type.oidТип данных, хранимых в индексе, или ноль, если он совпадает с opcintype

Значение opcmethod класса операторов должно совпадать с opfmethod для содержащего его семейства операторов. Кроме того, должно быть не больше одной строки в pg_opclass, в которой opcdefault равно true для любой данной комбинации opcmethod и opcintype.