我有一个MySQL表,例如
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
,c3
或ref
的值那是,
对于ref = 1,将选择c1的值,
对于ref = 2,将选择c2的值
和
对于ref = 3,将选择c3的值
预期结果:
id | cX
-----------
1 | z
2 | b
3 | p
4 | o
5 | k
任何帮助表示赞赏
最佳答案
使用CASE
。
SELECT id,
CASE ref
WHEN 1 THEN
c1
WHEN 2 THEN
c2
WHEN 3 THEN
c3
END cx
FROM elbat;
关于mysql - 根据行本身选择结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52096793/