我需要用列交换行,反之亦然。下面是查询:
SELECT TypeName, value
FROM [RamCustomData]
where Ram = 1024 and TypeName in ('RamType','productionUnitID','version')
order by 2
原始输出:
TypeName Value
RamType XYZ
productionUnitID ABC
version V123
预期产出
TypeName RamType ProductionUnitID Version
Value XYZ ABC V123
你能告诉我如何处理这项任务吗?
这是一个标准的枢轴...我们只需要包括TypeName='Value'
根据您的数据,...and TypeName in ('RamType','productionUnitID','version')
是可选的
例
Select TypeName='Value'
,*
From (
Select TypeName
,value
From [RamCustomData]
Where Ram = 1024
and TypeName in ('RamType','productionUnitID','version')
) src
Pivot (max(Value) for TypeName in ([RamType],[productionUnitID],[version]) ) pvt
返回
TypeName RamType productionUnitID version
Value XYZ ABC V123