кодесурса
«MySQL

Функции и операторы диапазона PostgreSQL

script1adsense2code
script1adsense3code

Вступление

Здесь доступны операторы для типов диапазона.

Операторы диапазона

оператор Описание пример Результат
знак равно равный SELECT int4range (1,5) = '[1,4]' :: int4range;
 ? Колонок?
----------
 T
(1 ряд) 
<> не равный SELECT numrange (3.5,4.3) <> numrange (3.5,4.4);
 ? Колонок?
----------
 T
(1 ряд) 
< меньше, чем SELECT int4range (1,15) <int4range (4,5);
 ? Колонок?
----------
 T
(1 ряд) 
> лучше чем SELECT int4range (1,15)> int4range (1,8);
 ? Колонок?
----------
 T
(1 ряд) 
<= меньше или равно ВЫБЕРИТЕ numrange (3.1,5.2) <= numrange (3.1,5.2);
 ? Колонок?
----------
 T
(1 ряд) 
> = больше или равно ВЫБЕРИТЕ numrange (3.1,5.2)> = numrange (3.1,5.0);
 ? Колонок?
----------
 T
(1 ряд) 
@> содержит диапазон SELECT int4range (3,5) @> int4range (3,4);
 ? Колонок?
----------
 T
(1 ряд) 
@> содержит элемент SELECT '[2014-01-01,2014-04-01)' :: tsrange @> '2014-03-10' :: timestamp;
 ? Колонок?
----------
 T
(1 ряд) 
<@ диапазон содержит SELECT int4range (3,5) <@ int4range (2,8);
 ? Колонок?
----------
 T
(1 ряд) 
<@ элемент содержится SELECT 53 <@ int4range (1,7);
 ? Колонок?
----------
 е
(1 ряд) 
&& перекрытия (есть общие точки) SELECT int8range (4,8) && int8range (5,13);
 ? Колонок?
----------
 T
(1 ряд) 
<< строго слева от SELECT int8range (3,10) << int8range (105,120);
 ? Колонок?
----------
 T
(1 ряд) 
>> строго право ВЫБЕРИТЕ int8range (30,50) >> int8range (20,30);
 ? Колонок?
----------
 T
(1 ряд) 
& < не распространяется на право SELECT int8range (5,15) & <int8range (17,23);
 ? Колонок?
----------
 T
(1 ряд) 
&> не распространяется слева от SELECT int8range (6,22) &> int8range (4,8);
 ? Колонок?
----------
 T
(1 ряд) 
- | - соседствует с SELECT numrange (1.7,2.6) - | - numrange (2.6,4.3);
 ? Колонок?
----------
 T
(1 ряд) 
+ союз SELECT numrange (7,17) + numrange (10,20);
	  
 ? Колонок?
----------
 [7,20)
(1 ряд)	  
* пересечение SELECT int8range (7,17) * int8range (10,20);
 ? Колонок?
----------
 [10,17)
(1 ряд)
- разница SELECT int8range (7,17) - int8range (10,20);
 ? Колонок?
----------
 [7,10)
(1 ряд)

Операторы сравнения <,>, <= и> = сначала сравнивают нижние границы первыми и сравнивают верхние границы тех, кто равен 1-му сравнению.

Операторы left-of / right-of / смежные всегда возвращают false, при этом указывается пустой диапазон; то есть пустой диапазон не считается ни до, ни после любого другого диапазона.

Операторы объединения и разности не будут работать, если результирующий диапазон должен будет содержать два непересекающихся поддиапазона, поскольку такой диапазон не может быть представлен.

Функции диапазона

нижняя () функция

Эта функция возвращает нижнюю границу диапазона, указанного в аргументе.

Синтаксис:

 ниже (anyrange)

Тип возврата : тип элемента диапазона

пример

Код:

SELECT lower(numrange(2.3,4.6));

Вот результат

Пример вывода:

 ниже
-------
   2,3
(1 ряд)

верхняя () функция

Эта функция возвращает верхнюю границу диапазона, указанного в аргументе.

Синтаксис:

 верхняя (anyrange)

Тип возврата : тип элемента диапазона

пример

Код:

SELECT upper(numrange(2.3,4.6));

Вот результат

Пример вывода:

 верхний
-------
   4,6
(1 ряд)

функция isempty ()

Эта функция проверяет, является ли указанный диапазон пустым или нет, и возвращает логическое значение.

Синтаксис:

 IsEmpty (anyrange) 

Тип возврата : логическое значение

пример

Код:

SELECT isempty(numrange(2.3,4.6));

Вот результат

Пример вывода:

 пустой
---------
 е
(1 ряд)

функция lower_inc ()

Эта функция используется для проверки, находится ли нижняя граница включительно или нет в указанном диапазоне, и возвращает логическое значение.

Синтаксис:

 lower_inc (anyrange)

Тип возврата : логическое значение

пример

Код:

SELECT lower_inc(numrange(2.3,4.6));

Вот результат

Пример вывода:

 lower_inc
-----------
 T
(1 ряд)

функция upper_inc ()

верхняя граница включительно?

Эта функция используется для проверки того, включена ли верхняя граница в указанный диапазон и возвращает логическое значение.

Синтаксис:

 upper_inc (anyrange) 

Тип возврата : логическое значение

пример

Код:

SELECT upper_inc(numrange(2.3,4.6);

Вот результат

Пример вывода:

 upper_inc
-----------
 е
(1 ряд)

функция lower_inf ()

Эта функция используется для проверки того, является ли нижняя граница бесконечной или нет в пределах указанного диапазона, и возвращает логическое значение.

Синтаксис:

 lower_inf (anyrange) 

Тип возврата : логическое значение

пример

Код:

SELECT lower_inf('(,)'::daterange);

Вот результат

Пример вывода:

 lower_inf
-----------
 T
(1 ряд)

функция upper_inf ()

Эта функция используется для проверки того, является ли верхняя граница бесконечной или нет в пределах указанного диапазона, и возвращает логическое значение.

Синтаксис:

 upper_inf (anyrange)

Тип возврата : боле

пример

Код:

SELECT upper_inf('(,)'::daterange);

Вот результат

Пример вывода:

 upper_inf
-----------
 T
(1 строка) Возврат

Нижняя и верхняя функции возвращают ноль, если диапазон пуст или запрошенная граница бесконечна. Функции lower_inc, upper_inc, lower_inf и upper_inf возвращают false для пустого диапазона.

Предыдущий: Функции и операторы JSON
Далее: Функции XML

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code