我有一行有很多列:
COL1 | COL2 | COL3 | ...
我希望有一列有很多行,例如:
COL1
COL2
COL3
..
答案 0 :(得分:1)
UNPIVOT
如果您使用的是版本2005 +
答案 1 :(得分:1)
如果是SQL Server 2000或更低版本......
如何在SQL Server中旋转表:http://support.microsoft.com/kb/175574
答案 2 :(得分:0)
看看UNPIVOT:
CREATE TABLE Table1 (col1 INT, col2 INT, col3 INT, col4 INT);
INSERT INTO Table1 (col1, col2, col3, col4) VALUES (1,2,3,4);
SELECT col, value FROM Table1
UNPIVOT (value FOR col IN (col1, col2, col3, col4)) AS unpvt
结果:
col value
col1 1
col2 2
col3 3
col4 4
如果您不想知道哪个值来自哪个列,请仅选择value
:
SELECT value FROM Table1
UNPIVOT (value FOR col IN (col1, col2, col3, col4)) AS unpvt