Диапазонные типы данных рассматриваются в Разделе 8.17.
В Таблице 9.53 показаны имеющиеся специальные операторы для диапазонных типов. Кроме них для диапазонов определены обычные операторы сравнения, показанные в Таблице 9.1. Операторы сравнения сначала сравнивают нижние границы диапазонов, и только если они равны, сравнивают верхние границы. Такие операторы сравнения обычно не помогает получить полезный в целом вариант сортировки, но позволяют строить по диапазонам уникальные индексы.
Таблица 9.53. Диапазонные операторы
Оператор Описание Пример(ы) |
---|
Первый диапазон содержит второй?
|
Диапазон содержит заданный элемент?
|
Первый диапазон содержится во втором?
|
Заданный элемент содержится в диапазоне?
|
Диапазоны пересекаются (у них есть общие элементы)?
|
Первый диапазон располагается строго слева от второго?
|
Первый диапазон располагается строго справа от второго?
|
Первый диапазон не простирается правее второго?
|
Первый диапазон не простирается левее второго?
|
Диапазоны примыкают друг к другу?
|
Вычисляет объединение диапазонов. Диапазоны должны пересекаться или касаться друг друга, чтобы их объединением был один диапазон (но см.
|
Вычисляет пересечение диапазонов.
|
Вычисляет разность диапазонов. При этом второй диапазон, если он содержится в первом, должен располагаться так, чтобы в результате его вычитания получался один диапазон.
|
Операторы слева/справа/примыкает всегда возвращают false, если один из диапазонов пуст; то есть, считается, что пустой диапазон находится не слева и не справа от какого-либо другого диапазона.
В Таблице 9.54 перечислены функции, предназначенные для работы с диапазонными типами.
Таблица 9.54. Диапазонные функции
Если функциям lower_inc
, upper_inc
, lower_inf
, upper_inf
передаётся пустой диапазон, они возвращают false.