我有一个返回 1 行的 SQL 查询,其中包含多个列标题:
Col 1 | Col 2 | Col 3
val 1 | Val 2 | Val 3
有没有办法将此行转换为 2 列,即:
Col 1 | Val 1
Col 2 | Val 2
Col 3 | Val 3
这是在 SQL Server 2008 r2 上运行
编辑:添加一个更好的例子
Product_Code | Product_Name | Customer_Name
101 | yummy cake | derps cake shop
来自一个简单的
select p.prod_code, p.prod_name, c.cust_name from product p
inner join customer c on p.id = c.id
类型查询。我想要显示的是:
col heading 1| col heading 2
product_code | 101
Product_Name | yummy cake
customer_name| derps cake shop
Try this
CREATE TABLE #Table1
([Col 1] varchar(5), [Col 2] varchar(5), [Col 3] varchar(5))
;
INSERT INTO #Table1
([Col 1], [Col 2], [Col 3])
VALUES
('val 1', 'Val 2', 'Val 3')
;
SELECT Col,Val FROM
(
SELECT * FROM #Table1
) P
UNPIVOT
(
val FOR Col IN ([Col 1], [Col 2], [Col 3])
) pvt
DROP TABLE #Table1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)