我已将数据简化为类似以下内容:
+---------+-----+--------+
| item | type | color |
+-------+-------+--------+
| 1 | A | red |
| 1 | B | blue |
| 2 | A | orange |
| 2 | B | pink |
| 2 | C | blue |
| 3 | B | yellow |
+---------+-----+--------+
'类型'每个项目都是可变的,因此,我需要一个动态的MySQL数据透视解决方案,可以处理任意数量的类型。以下是我需要从MySQL查询返回的结果集类型。如您所见,我不需要进行汇总计算。
+---------+------+--------+--------+
| item | A | B | C |
+-------+--------+--------+--------+
| 1 | red | blue | |
| 2 | orange | pink | blue |
| 3 | | yellow | |
+-------+--------+--------+--------+
我怀疑解决方案可能涉及使用MySQL程序?
答案 0 :(得分:0)
select item, min(A), min(B), min(C) from (
select item,
case when type = 'A' then color end as 'A',
case when type = 'B' then color end as 'B',
case when type = 'C' then color end as 'C'
from color
) as tbl
group by item
答案 1 :(得分:0)
你正在“转动”。在my blog中,我提供了一个通用存储过程来为您生成SELECT
语句。