如何获得列标头值列作为结果??Sql Server 2008
本文关键字:结果 Sql Server 2008 何获得 | 更新日期: 2023-09-27 17:49:37
嗨,我是初学者,试图在列中获取列头值,使其值不等于'0.0'或'0'
我的查询是
select M1,M2,M3,M4,M5,M6,M7,M8,M9,M10 from [dbo].[Target]
查询结果为,
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10
0 5.0 0.0 1.0 0.0 2.0 3.0 9.0 0 0.0
我正在尝试得到这个格式的结果,
M2 5.0
M4 1.0
M6 2.0
M7 3.0
M8 9.0
不包含"0"answers"0.0"的列在查询结果
希望您的建议,谢谢提前。
类似于
SELECT ColName,Value
FROM dbo.Target t
UNPIVOT (Value for ColName in (M1,M2,M3,M4,M5,M6,M7,M8,M9,M10)) u
WHERE Value != 0
参见PIVOT和UNPIVOT。结果:
ColName Value
--------------------- ----------------------
M2 5
M4 1
M6 2
M7 3
M8 9