56,678
社区成员
发帖
与我相关
我的任务
分享
+------+------+--------+-----+----------+
|C1 |B1 |B2 |B3 |B4 |
+------+------+--------+-----+----------+
|A1 |hello |goodbye |eat |monitor |
|A2 |nihao |zaijian |chi |xianshiqi |
|A3 | | |mouse|jianshi |
+------+------+--------+-----+----------+
select c1,max(case when c2='B1' then c3 else '' end) as `B1`,
max(case when c2='B2' then c3 else '' end) as `B2`,
max(case when c2='B3' then c3 else '' end) as `B3`,
max(case when c2='B4' then c3 else '' end) as `B4`
from tx
GROUP BY C1
这样就可以了
SELECT c1,
MAX(CASE c2 WHEN 'B1' THEN c3) AS B1,
MAX(CASE c2 WHEN 'B2' THEN c3) AS B2,
MAX(CASE c2 WHEN 'B3' THEN c3) AS B3,
MAX(CASE c2 WHEN 'B4' THEN c3) AS B4
FROM tx
GROUP BY c1