Начало работы
Подключение
Тесты производительности
Развёртывание
Использование данных
Загрузка данных
Миграция данных
Запрос данных
Управление кластерами
Обновление
Глобальное обслуживание
Масштабирование
Мониторинг
Безопасность
Лучшие практики
Технические принципы
Типы данных
Хранилище
Исполняющий движок
Потоковая обработка (Domino)
MARS3 Индексы
Расширения
Расширенные функции
Расширенный запрос
Федеративные запросы
Grafana
Резервное копирование и восстановление
Аварийное восстановление
Руководство
Настройка производительности
Устранение неполадок
Инструменты
Параметры конфигурации
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