我有类似以下的表:
Year | Product | Value
2006 A 10
2006 B 20
2006 C 30
2007 A 40
2007 B 50
2007 C 60
Run Code Online (Sandbox Code Playgroud)
我想要一个返回以下比较的查询
Product | 2006 Value | 2007 Value
A 10 40
B 20 50
C 30 60
Run Code Online (Sandbox Code Playgroud)
有什么选择呢?它可以在没有连接的情况下完成吗?
我正在使用DB2,但所有SQL类型的答案都会有所帮助.
select Product,
max(case when Year = 2006 then Value end) as [2006 Value],
max(case when Year = 2007 then Value end) as [2007 Value]
from MyTable
group by Product
order by Product
Run Code Online (Sandbox Code Playgroud)