SELECT switch/replace 列的答案

SELECT switch/replace answer of a column

我是一名程序员,在 SQL 方面经验有限。但本质上我想做的是

SELECT * FROM yesnomaybe_table;

我的输出:

yesnomaybe 
----------
0
1
2
1

我想要的输出:

yesnomaybe 
----------
45
64
55
64

我像

一样调查过 CASE
SELECT yesnomaybe, 
    CASE WHEN yesnomaybe = 0 THEN 45
         WHEN yesnomaybe = 1 THEN 64
         ELSE 55
    END
FROM yesnomaybe_table;

但我的输出是这样的:

 yesnomaybe | case 
 -----------+------
     0      |   45
     1      |   64
     2      |   55
     1      |   64

我该如何解决这个问题?

你想要这样的东西:

SELECT 
    CASE WHEN yesnomaybe = 0 THEN 45
         WHEN yesnomaybe = 1 THEN 64
         ELSE 55
    END as yesnomaybe
FROM yesnomaybe_table;

在您的示例中,您选择了 yesnomaybe,然后进行了没有名称的切换。