Jeśli chcesz tablicę:
SELECT enum_range(NULL::myenum)
Jeśli chcesz mieć osobny rekord dla każdej pozycji w wyliczeniu:
SELECT unnest(enum_range(NULL::myenum))
Dodatkowe informacje
To rozwiązanie działa zgodnie z oczekiwaniami, nawet jeśli wyliczenie nie znajduje się w domyślnym schemacie. Na przykład zastąp myenum
z myschema.myenum
.
Typ danych zwróconych rekordów w powyższym zapytaniu to myenum
. W zależności od tego, co robisz, może być konieczne przesyłanie do tekstu. np.
SELECT unnest(enum_range(NULL::myenum))::text
Jeśli chcesz określić nazwę kolumny, możesz dołączyć AS my_col_name
.
Podziękowania dla Justina Ohmsa za wskazanie kilku dodatkowych wskazówek, które zawarłem w mojej odpowiedzi.