PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

SQL заявка за получаване на всички стойности, които едно изброяване може да има

Ако искате масив:

SELECT enum_range(NULL::myenum)

Ако искате отделен запис за всеки елемент в изброяването:

SELECT unnest(enum_range(NULL::myenum))  

Допълнителна информация

Това решение работи според очакванията, дори ако вашият enum не е в схемата по подразбиране. Например заменете myenum с myschema.myenum .

Типът данни на върнатите записи в горната заявка ще бъде myenum . В зависимост от това, което правите, може да се наложи да прехвърляте към текст. напр.

SELECT unnest(enum_range(NULL::myenum))::text

Ако искате да посочите името на колоната, можете да добавите AS my_col_name .

Благодарение на Джъстин Омс, че посочи някои допълнителни съвети, които включих в отговора си.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да работя с PGpoint за геолокация, използвайки PostgreSQL?

  2. Намиране и замяна на регулярни изрази в Postgres

  3. Грешки в еволюцията на Heroku

  4. Използване на прозоречни функции в изявление за актуализиране

  5. Избиране на редове, подредени по една колона и различни от друга