Sql 选择切换/替换列的答案
我是一个在SQL方面经验有限的程序员。但本质上我想做的是Sql 选择切换/替换列的答案,sql,postgresql,psql,Sql,Postgresql,Psql,我是一个在SQL方面经验有限的程序员。但本质上我想做的是 SELECT * FROM yesnomaybe_table; 我的输出: yesnomaybe ---------- 0 1 2 1 我的期望输出: yesnomaybe ---------- 45 64 55 64 我调查过这样的案子 SELECT yesnomaybe, CASE WHEN yesnomaybe = 0 THEN 45 WHEN yesnomaybe = 1 THEN 64
SELECT * FROM yesnomaybe_table;
我的输出:
yesnomaybe
----------
0
1
2
1
我的期望输出:
yesnomaybe
----------
45
64
55
64
我调查过这样的案子
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,然后执行一个没有名称的切换。从
选择中删除yesnomaybe
列。顺便问一下,0、1、2有什么问题?用另一组数值替换一组数值对我来说没有太大意义,在我看来,这更像是第一个视图中的随机数。。。