我有下表:
-------------------------------------------
ID Group myDate Value
-------------------------------------------
1 A 2014-06-01 100
2 A 2014-06-02 200
3 A 2014-06-03 300
4 B 2014-06-01 50
5 B 2014-06-02 100
6 B 2014-06-03 125
我希望得到以下结果:
-------------------------------------------
myDate Value myDate Value
-------------------------------------------
2014-06-01 100 2014-06-01 50
2014-06-02 200 2014-06-02 100
2014-06-03 300 2014-06-03 125
所以我想基于Group字段使其成为水平视图。
有谁知道怎么做?
谢谢。
答案 0 :(得分:1)
<强>小提琴:强> http://sqlfiddle.com/#!6/df9dc/1/0
select min(case when grp = 'A' then mydate end) as mydate1,
min(case when grp = 'A' then value end) as value1,
min(case when grp = 'B' then mydate end) as mydate2,
min(case when grp = 'B' then value end) as value2
from tbl
group by mydate
如果你有很多团体会很麻烦,但如果只有几个团体,那么为其他人添加必要的案例陈述应该不会太难。