T:SQL:从行中选择值作为列

T:SQL:从行中选择值作为列,第1张

T:SQL:从行中选择值作为列

不用

PIVOT
关键字就可以轻松完成此 *** 作,只需将其分组即可

select    P.ProfileID,    min(case when PD.PropertyName = 'FirstName' then P.PropertyValue else null end) as FirstName,    min(case when PD.PropertyName = 'LastName' then P.PropertyValue else null end) as LastName,    min(case when PD.PropertyName = 'Salary' then P.PropertyValue else null end) as Salaryfrom Profiles as P    left outer join PropertyDefinitions as PD on PD.PropertyDefinitionID = P.PropertyDefinitionIDgroup by P.ProfileID

您也可以使用

PIVOT
关键字执行此 *** 作

select    *from(    select P.ProfileID, P.PropertyValue, PD.PropertyName    from Profiles as P        left outer join PropertyDefinitions as PD on PD.PropertyDefinitionID = P.PropertyDefinitionID) as P    pivot    (        min(P.PropertyValue)        for P.PropertyName in ([FirstName], [LastName], [Salary])    ) as PIV


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5649765.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存