我有一个类似MySQL的表 p>
id | ref | c1 | c2 | c3
---------------------------
1 | 3 | x | y | z
2 | 2 | a | b | c
3 | 1 | p | q | r
4 | 3 | m | n | o
5 | 2 | j | k | l
我的问题是我如何SELECT
和id
,c1
或c2
的{{1}}和值列c3
即
对于 ref = 1 ,将选择 c1 的值,
对于 ref = 2 ,将选择 c2 的值
和
对于 ref = 3 ,将选择 c3 的值
所需结果:
ref
感谢您的帮助
答案 0 :(得分:2)
使用CASE
。
SELECT id,
CASE ref
WHEN 1 THEN
c1
WHEN 2 THEN
c2
WHEN 3 THEN
c3
END cx
FROM elbat;
答案 1 :(得分:1)
用例
select id,case ref when 1 then c1
when 2 then c2
when 3 then c3
end as cx from table1
一般情况下的功能/表达式
CASE expression
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE result
END