列挙型(ENUM)の使い方

決まった値だけを持つ型を作る

書き方

CREATE TYPE 名前 AS ENUM ('値1', '値2', …);
ALTER TYPE 名前 ADD VALUE '値' [BEFORE | AFTER '値'];
enum_range(NULL::名前)

書いた値だけを入れられる型です。ほかの値を入れるとエラーになります。並べ替えると、書いた順(文字の順ではない)に並びます。

例

CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
SELECT enum_range(NULL::mood);

実際に打って練習する

PostgreSQL コースの Lv7「決まった値だけの型 ENUM」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜2 はログインすると無料で試せます(それより先はゴールド以上のプランで遊べます)。

PostgreSQL の構文一覧(psql・JSONB・PL/pgSQL)へ戻る