我有以下片段:
CREATE TABLE [SINGLE_COL]
(
[COL1] [varchar](50) NULL,
[COL2] [varchar](50) NULL,
[COL3] [varchar](50) NULL
)
GO
INSERT INTO [SINGLE_COL]
VALUES ('A', 'B', 'C')
GO
INSERT INTO [SINGLE_COL]
VALUES ('D', 'E', 'F')
GO
select * from [SINGLE_COL]
它像這樣回傳:
COL1 COL2 COL3
A B C
D E F
我想把所有的行變成一列,如下所示:
COL
A
B
C
D
E
F
這是我在oracle中所做的:
SELECT col FROM SINGLE_COL
UNPIVOT (col FOR col1 IN (col1, col2, col3));
這在 Oracle 中非常簡單易行,但在 MS SQL Server 中則不然!
我相信我必須使用函式 UNPIVOT 但如何?
謝謝!
uj5u.com熱心網友回復:
你可以這樣做:
select Cols from [SINGLE_COL]
unpivot
(
Cols
for col in (Col1, Col2, Col3)
) u;
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/350611.html
標籤:sql sql-server 枢 转轴
