⌘+k ctrl+k
1.1.3 (stable)
Search Shortcut cmd + k | ctrl + k
Enum Functions

This section describes functions and operators for examining and manipulating ENUM values. The examples assume an enum type created as:

CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy', 'anxious');

These functions can take NULL or a specific value of the type as argument(s). With the exception of enum_range_boundary, the result depends only on the type of the argument and not on its value.

Name Description
enum_code(enum_value) Returns the numeric value backing the given enum value.
enum_first(enum) Returns the first value of the input enum type.
enum_last(enum) Returns the last value of the input enum type.
enum_range(enum) Returns all values of the input enum type as an array.
enum_range_boundary(enum, enum) Returns the range between the two given enum values as an array.

enum_code(enum_value)

Description Returns the numeric value backing the given enum value.
Example enum_code('happy'::mood)
Result 2

enum_first(enum)

Description Returns the first value of the input enum type.
Example enum_first(NULL::mood)
Result sad

enum_last(enum)

Description Returns the last value of the input enum type.
Example enum_last(NULL::mood)
Result anxious

enum_range(enum)

Description Returns all values of the input enum type as an array.
Example enum_range(NULL::mood)
Result [sad, ok, happy, anxious]

enum_range_boundary(enum, enum)

Description Returns the range between the two given enum values as an array. The values must be of the same enum type. When the first parameter is NULL, the result starts with the first value of the enum type. When the second parameter is NULL, the result ends with the last value of the enum type.
Example enum_range_boundary(NULL, 'happy'::mood)
Result [sad, ok, happy]