以下是一个示例表:
--|--id--|--value--|
--| 1 | v1 |
--| 1 | v2 |
--| 1 | v3 |
--| 1 | v4 |
--| 2 | v1 |
--| 2 | v2 |
--| 2 | v3 |
--| 3 | v1 |
--| 3 | v2 |
--------------------
我的查询结果应该是:
--|--id--|--value1-|--value2-|--value3-|--value4-|
--| 1 | v1 | v2 | v3 | v4 |
--| 2 | v1 | v2 | v3 | NULL |
--| 3 | v1 | v2 | NULL | NULL |
--------------------------------------------------
这可以使用SQL吗?
答案 0 :(得分:0)
使用conditional Aggregate
SELECT id,
Max(CASE
WHEN value = 'v1' THEN Value
END) Value1,
Max(CASE
WHEN value = 'v2' THEN Value
END) Value2,
Max(CASE
WHEN value = 'v3' THEN Value
END) Value3,
Max(CASE
WHEN value = 'v4' THEN Value
END) Value4
FROM yourtable