我是一名SQL初學者,並且有一個問題。我有用戶數據的表像這樣SQL Server從表中獲取行並顯示在列中
uid nid val
+---+---+---+
| 1 | x | 3 |
+---+---+---+
| 2 | x | 3 |
+---+---+---+
| 3 | x | 3 |
+---+---+---+
| 1 | y | 4 |
+---+---+---+
| 2 | y | 4 |
+---+---+---+
| 3 | y | 4 |
+---+---+---+
| 1 | z | 5 |
+---+---+---+
其中uid是用戶ID,NID是用於標識值的名稱ID val是實際值。
我想編寫一個查詢其給出以下結果
uid x y z
+---+---+---+---+
| 1 | 3 | 4 | 5 |
+---+---+---+---+
| 2 | 3 | 4 | 0 |
+---+---+---+---+
| 3 | 3 | 4 | 0 |
+---+---+---+---+
是否有功能或可以從多個行讀取數據,並把它列報表?
閱讀有關'PIVOT'或*有條件聚集* – Shnugo