1
A
回答
3
嘗試
select *
from yourTable
unpivot (
Value
for NewCol in (Value1, Value2, Value3,Value4, Value5)
) up
+0
感謝nazark,這對我有用。欣賞這裏的幫助。 –
0
轉換列行被稱爲unpivoting。將行轉換爲列是旋轉的。
一種解決數據不透明的方法是將apply operator與table value constructor合併。
本示例使用common table expression (CTE)返回3個樣本記錄。
Id ColumnOne ColumnTwo ColumnThree
1 a b c
2 d e f
3 g h i
例
-- Unpivoting with apply and VALUES.
WITH SampleData AS
(
/* This CTE returns 3 sample records.
*/
SELECT
cte.*
FROM
(
VALUES
(1, 'a', 'b', 'c'),
(2, 'd', 'e', 'f'),
(3, 'g', 'h', 'i')
) AS cte(Id, ColumnOne, ColumnTwo, ColumnThree)
)
SELECT
sd.Id,
ca.*
FROM
SampleData AS sd
CROSS APPLY
(
VALUES
(ColumnOne),
(ColumnTwo),
(ColumnThree)
) AS ca (ColumnFour)
;
返回的輸出如下所示:
Id ColumnFour
1 a
1 b
1 c
2 d
2 e
2 f
3 g
3 h
3 i
個人而言,我更喜歡@ nazark的做法。使用UNPIVOT運算符可幫助其他人遵循代碼的意圖。如果這個答案幫助你請accept it。接受答案獎勵貢獻者的努力,並幫助具有相同問題的其他人找到工作答案。
+0
感謝您解釋所有這些.. nazark的回覆幫助我獲得了所需的結果 –
相關問題
- 1. 行轉換成列的sql
- 2. 轉換SQL行成列
- 3. SQL轉置成多列行
- 4. 將多列轉換成行
- 5. 轉換行成多列
- 6. 轉換列成行的T-SQL(SQL 2005)
- 7. 變換行轉換成列MS SQL
- 8. [R變換多個行轉換成列
- 9. SQL合併行轉換成列(多對多情況)
- 10. SQL查詢行轉換成列
- 11. 合併行轉換成列的sql
- 12. 行轉換成列
- 13. 轉換列成行
- 14. 轉換列成行
- 15. SQL將多列轉換爲行
- 16. 轉列轉換爲行SQL
- 17. 切換行轉換成列
- 18. 我如何多列數據轉換成一行在SQL
- 19. 星火SQL:轉換一些行轉換成列
- 20. 轉換行轉換成列在SQL查詢欄時間
- 21. 轉換多行多列
- 22. SQL將行轉成列
- 23. SQL將行轉換爲列
- 24. SQl的行列轉換
- 25. 轉換行列在SQL
- 26. SQL將行轉換爲列
- 27. 轉換列行和SQL Server
- 28. SQL錶行 - 列轉換
- 29. 轉換列行的SQL Server
- 30. 將SQL列轉換爲行
請使用純文本格式的樣本數據,而不是圖像。 –
查看'UNPIVOT' –