从PostgreSQL中的枚举列表中选择值

前端之家收集整理的这篇文章主要介绍了从PostgreSQL中的枚举列表中选择值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想从不在数据库中的enumaration中进行选择.

例如. SELECT id FROM my_table返回值1,2,3
我想显示1 – > ‘chocolate’,2 – > ‘椰子’,3 – > ‘pizza’等SELECT CASE有效,但太复杂,难以概述许多值.我想到了类似的东西

SELECT id,array['chocolate','coconut','pizza'][id] FROM my_table

但我无法成功使用数组.有一个简单的解决方案吗?所以这是一个简单的查询,而不是plpgsql脚本或类似的东西.

with food (fid,name) as (
  values 
     (1,'chocolate'),(2,'coconut'),(3,'pizza')
)
select t.id,f.name
from my_table t
  join food f on f.fid = t.id;

或没有CTE(但使用相同的想法):

select t.id,f.name
from my_table t
  join (
     values 
       (1,'pizza')
  ) f (fid,name) on f.fid = t.id;

猜你在找的Postgre SQL相关文章