SQL
Enum Functions
<!-- markdownlint-disable MD001 -->  
This section describes functions and operators for examining and manipulating [`ENUM` values](#docs:sql:data_types:enum).
The examples assume an enum type created as:  
```sql
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)`](#::enum_codeenum_value) | Returns the numeric value backing the given enum value. |
| [`enum_first(enum)`](#::enum_firstenum) | Returns the first value of the input enum type. |
| [`enum_last(enum)`](#::enum_lastenum) | Returns the last value of the input enum type. |
| [`enum_range(enum)`](#::enum_rangeenum) | Returns all values of the input enum type as an array. |
| [`enum_range_boundary(enum, enum)`](#::enum_range_boundaryenum-enum) | Returns the range between the two given enum values as an array. |