老实说,我不知道该怎么称呼它,我觉得我可能会遗漏一些非常基本的东西,但我整天都在搜索互联网,却一直无法找到简单或直截了当的东西。 T-SQL操作要做我想要的。
我正在建立一个包含锦标赛比赛数据的数据库,我希望在大网格中显示任意两名球员之间的球员对决(总胜/负)。例如,如果我有这个组合临时表:
Player1 wins losses Player2
A 4 2 B
A 1 3 C
B 2 4 A
B 0 5 C
C 3 1 A
C 5 0 B
我想找到一种方法将这些结果放在网格中,如下所示:
A B C
A 0/0 4/2 1/3
B 2/4 0/0 0/5
C 3/1 5/0 0/0
当然,这是一个超简化的例子。实际上可能有数十甚至数百名玩家。无论有多少玩家,它都需要能够无缝地工作。我将从报告风格的过程中运行它来分析数据,其格式可以复制/粘贴到excel中。
我确信我可以通过一些非常复杂的动态SQL来做这样的事情,但我希望有更好/更标准的方法来构建这种方式的查询。
我有一种感觉,我甚至可能在很多年前在大学里学会了如何做到这一点,但后来却忘记了。
答案 0 :(得分:4)
编辑2 - 来源将成为临时表,而Player1将全部包含
示例强>
background-image
<强>返回强>
如果它有助于可视化子查询“喂养”,Pivot看起来像这样:
现在,如果源温度包含所有组合
%