Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
Определяет новое семейство операторов.
CREATE OPERATOR FAMILY <name> USING <index_method>
Команда CREATE OPERATOR FAMILY создаёт новое семейство операторов. Семейство операторов определяет набор связанных классов операторов, а также, возможно, дополнительные операторы и вспомогательные функции, совместимые с этими классами операторов, но не являющиеся необходимыми для работы отдельного индекса. (Операторы и функции, критически важные для индексов, должны быть сгруппированы внутри соответствующего класса операторов, а не находиться «свободно» в составе семейства операторов. Как правило, операторы одного типа данных привязываются к классам операторов, тогда как операторы, работающие с разными типами данных, могут оставаться свободными в рамках семейства операторов, содержащего классы операторов для обоих типов данных.)
Новое семейство операторов изначально пустое. Его следует заполнить с помощью последующих команд CREATE OPERATOR CLASS для добавления входящих в него классов операторов, а также, при необходимости, команд ALTER OPERATOR FAMILY для добавления «свободных» операторов и соответствующих им вспомогательных функций.
Если указано имя схемы, то семейство операторов создается в указанной схеме. В противном случае оно создается в текущей схеме. Два семейства операторов в одной схеме могут иметь одинаковые имена только в том случае, если они предназначены для разных методов индексов.
Пользователь, определивший семейство операторов, становится его владельцем. В настоящее время пользователь, создающий семейство, должен быть суперпользователем. (Это ограничение установлено потому, что некорректное определение семейства операторов может привести к путанице или даже аварийному завершению работы сервера.)
Дополнительную информацию см. в разделе «Интерфейс расширений с индексами» документации PostgreSQL.
CREATE OPERATOR FAMILY является расширением Database. В стандарте SQL нет оператора CREATE OPERATOR FAMILY.
ALTER OPERATOR FAMILY, DROP OPERATOR FAMILY, ALTER OPERATOR CLASS, CREATE OPERATOR CLASS, DROP OPERATOR CLASS