кодесурса
«MySQL

PostgreSQL: функции поддержки Enum

script1adsense2code
script1adsense3code

Вступление

В отличие от других типов, перечисляемые типы необходимо создавать с помощью команды CREATE TYPE. Этот тип используется для хранения статического упорядоченного набора значений, например, направлений компаса, то есть NORTH, SOUTH, EAST и WEST или дней недели. Для типов enum есть несколько функций, которые позволяют более чистое программирование без жесткого кодирования определенных значений типа enum. Тип enum может использоваться в определениях таблиц и функций так же, как и любой другой тип.

 CREATE TYPE country AS ENUM («Индия», «Аргентина», «Австралия», «Япония», «Америка», «Китай»); 

функция enum_first (anyenum)

Функция enum_first () возвращает первое значение входного типа enum

Синтаксис:

 enum_first (anyenum)

пример

 postgres = # select enum_first (null :: country);
enum_first
------------
Индия
(1 ряд)

функция enum_last (anyenum)

Функция enum_last () возвращает последнее значение типа входного перечисления.

Синтаксис:

 enum_last (anyenum)

пример

 postgres = # SELECT enum_last (null :: country);
enum_last
-----------
Китай
(1 ряд)

функция enum_range (anyenum)

Функция enum_range () возвращает все значения входного типа enum в упорядоченном массиве.

Синтаксис:

 enum_range (anyenum)

пример

 ВЫБЕРИТЕ enum_range (null :: country);
enum_range
-------------------------------------------------
{Индия, Аргентина, Австралия, Япония, Америка, Китай}
(1 ряд)

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

 postgres = # SELECT enum_range (null :: country);
 enum_range
-------------------------------------------------
{Индия, Аргентина, Австралия, Япония, Америка, Китай}
(1 ряд)

Функция enum_range (anyenum, anyenum)

Функция enum_range () возвращает диапазон между двумя заданными значениями перечисления в виде упорядоченного массива. Значения должны быть из того же типа перечисления.
Если первый параметр имеет значение null, результат будет начинаться с первого значения типа enum.
Если второй параметр имеет значение null, результат заканчивается последним значением типа enum.

Синтаксис :

 enum_range (anyenum, anyenum) 

Пример-1

 postgres = # SELECT enum_range ('australia' :: страна, 'America' :: страна);
enum_range
---------------------------
{Австралия, Япония, Америка}
(1 ряд)

Пример-2

 postgres = # SELECT enum_range (null, 'America' :: Country);
enum_range
-------------------------------------------
{Индия, Аргентина, Австралия, Япония, Америка}
(1 ряд)

Пример-3

 postgres = # SELECT enum_range ('argentina' :: country, null);
enum_range
-------------------------------------------
{Аргентина, Австралия, Япония, Америка, Китай}
(1 ряд)

Предыдущая: Функции текстового поиска и операторы
Next: Функции системной информации

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code