Postgresでは、クエリpg_type
は、私が定期的に使用している列挙の最新のリストを表示します。私はこのようなものを使用しています:
SELECT pg_type.typname AS enum_type, pg_enum.enumlabel AS enmu_label FROM
pg_type JOIN pg_enum ON pg_enum.enumtypid = pg_type.oid;
または
SELECT distinct pg_type.typname AS enum_type FROM pg_type JOIN pg_enum ON
pg_enum.enumtypid = pg_type.oid;
これは悪い習慣ですか?
これは悪い習慣ですか?
いいえ、まったくありません。カタログを変更することは悪い習慣ですが、クエリしない理由はありません。
しかし、クエリでは…
SELECT distinct pg_type.typname AS enum_type FROM pg_type JOIN pg_enum ON pg_enum.enumtypid = pg_type.oid;
…参加する必要はありませんpg_enum
およびdistinct
を使用:
create type mood as enum ('sad', 'ok', 'happy');
select * from pg_enum;
列挙型| enumsortorder | enumlabel :----- :------------ | :-------- 53430 | 1 |悲しい 53430 | 2 |わかりました 53430 | 3 |幸せ
select typname from pg_type where typtype='e';
| typname | | :------ | |気分|
dbfiddle ---(ここ