如何在不聚合列的情况下转动sql数据
我在查询中有以下输出。
SKILL LEVEL SCORERANGE
-----------------------------------------------------------------------------
Stunts LOW 0.0 - 4.0
Stunts MED 3.0 - 7.0
Stunts HI 6.0 - 10.0
Pyramids LOW 0.0 - 4.0
Pyramids MED 3.0 - 7.0
Pyramids HI 6.0 - 10.0
Tosses LOW 0.0 - 4.0
Tosses MED 3.0 - 7.0
Tosses HI 6.0 - 10.0
Standing Tumbling LOW 0.0 - 4.0
Standing Tumbling MED 3.0 - 7.0
Standing Tumbling HI 6.0 - 10.0
Running Tumbling LOW 0.0 - 4.0
Running Tumbling MED 3.0 - 7.0
Running Tumbling HI 6.0 - 10.0
Jumps LOW 0.0 - 4.0
Jumps MED 3.0 - 7.0
我希望在不聚合任何内容的情况下对这些数据进行PIVOT。所以我想要一个结果,每个技能只显示一行,然后转动LEVEL,就像这样......
SKILL LOWRANGE MEDRANGE HIRANGE
Stunts 0.0 - 4.0 3.0 - 7.0 6.0 - 10.0
Pyramids 0.0 - 4.0 3.0 - 7.0 6.0 - 10.0
Tosses 0.0 - 4.0 3.0 - 7.0 6.0 - 10.0
Standing Tumbling 0.0 - 4.0 3.0 - 7.0 6.0 - 10.0
Running Tumbling 0.0 - 4.0 3.0 - 7.0 6.0 - 10.0
...
我对基本的数据透视语法有很好的理解,但我正在努力解决这个问题,因为在结果集中没有任何东西要聚合。
为了给你一些东西,试着为我修好......
SELECT SKILL, LOWRANGE, MEDRANGE, HIRANGE
FROM (SELECT SKILL, [LEVEL], SCORERANGE FROM ScoreRanges) ps
PIVOT
(
MAX(SCORERANGE) --THIS IS PROBABLY WRONG
FOR SCORERANGE IN
(
--SOMETHING GOES HERE
)
) as pvt
谢谢你的帮助。
赛斯
没有找到相关结果
已邀请:
2 个回复
暑袜眠退
组合只有1行,您可以使用
或
漂汀拦
以下是您可以在Adventureworks数据库中运行的示例,因此您可以使用它来查看
的工作原理
我还有一个PIVOT示例:在SQL Server中使用配置值填充变量的三种不同方法