0
我對我自己的個人項目卡住了一個簡單的SQL Server事情。SQL Server組和反向
我有一個表X:
| Name | Lecture | Points |
|:-----------|------------:|:------------:|
| John | Math | 2
| John | Bio | 5
| Tom | Physics | 8
| Tom | Math | 2
| Bob | Physics | 1
| Bob | Bio | 6
我的名字,並把所有的點我一個排的每個人要組:
| Name | Math | Bio | Physics |
|:-----------|------:|:----:|:-------:|
| John | 2 | 5 | NULL
| Tom | 2 | NULL | 8
| Bob | NULL | 6 | 1
我試着這樣做:
SELECT Name, ? AS Math, ? AS Bio, ? AS Physics
FROM X
GROUP BY Name
但我不知道該放什麼而不是「?」。我怎樣才能做到這一點 ?
你需要做的無論是PIVOT或交叉表(也稱爲條件聚合)。 –
是的,PIVOT會做得很好。對於簡單的事例,如上例所示,它將非常簡單直接。但是,如果您的透視列未知 - 您有藝術,西班牙,PE等 - 並且可以創建更多,您將需要查看創建動態PIVOT。這兩個主題都在堆棧交換中很好地覆蓋 –