对这个最容易解决的问题提出了很大的挑战,希望有人可以帮助我,非常感谢你!
我有一个带有字段(A,B,C,D,E,F和G)的MySql表和下面的示例数据;
A | B | C | D | E | F | G
1 | 0 | 0 | K | M | V | ķ
0 | 1 | 0 | H | L | P | ž
0 | 0 | 1 | G | W | Y | X
我想创建一个SQL -query,它的工作原理如下:
如果A为1,则返回字段A和D
OR
如果B为1则返回字段B和F
OR
如果C为1,则返回字段C和E
因此查询的输出将是这样的;
A | B | C | D | E | ˚F
1 | | | K | |
| 1 | | | | P |
| | 1 | | W |
这可能吗?
非常感谢您的帮助,谢谢。
亲切的问候,
JH
答案 0 :(得分:1)
这会有用吗?
SELECT
CASE WHEN A = 1 THEN A ELSE NULL END AS A,
CASE WHEN B = 1 THEN B ELSE NULL END AS B,
CASE WHEN C = 1 THEN C ELSE NULL END AS C,
CASE WHEN A = 1 THEN D ELSE NULL END AS D,
CASE WHEN C = 1 THEN E ELSE NULL END AS E,
CASE WHEN B = 1 THEN F ELSE NULL END AS F
FROM YourTable