我无法弄清楚如何转动桌子。我需要一个看起来像这样的输出
8 9 10 11 12 13 14
---------------------------------------------
1 test1 test1 test1 test2 text2 test2 test2
2 test2 test2 test3 test3 text3 test3 test3
3
4 test3
我的数据是这样的:
name hour date
-------------------
test1 8 1
test1 9 1
test1 10 1
test2 11 1
test2 12 1
test2 13 1
test2 14 1
test2 8 2
test2 9 2
test3 10 2
test3 11 2
test3 12 2
test3 13 2
test3 14 2
test3 11 4
我也尝试过像这样的查询
select [8],[9],[10],
[11],[12],[13],[14]
from
(select name,hour,date
from myschedule)as x
pivot
(
max(name) for hour in ([8],[9],[10],
[11],[12],[13],[14])
)as pivottable
有没有人可以解决这个问题,我不知道如何查询这个东西:( 感谢
答案 0 :(得分:0)
尝试此查询
select *
from
(
select NAME,HOUR,DATE
from myschedule
unpivot
(
NAME
for HOUR in ([8],[9],[10],
[11],[12],[13],[14])
) unpiv
) src
<强> Fiddle Demo 强>