mysql+sql+列变成横向_SQL Server表竖列转横向显示

----------联合查询结果集存入临时表

select * into ##tmpa from (select wh_WhName,sum(ps_DiscountMoney) as moneys,psr.wh_Id,Convert(varchar(10),ps_PSRTime,120) as ps_PSRTime

from PosSaleRecord as psr inner join wareHouse as wh on wh.wh_Id=psr.wh_Id group by psr.wh_Id,wh_WhName,Convert(varchar(10),ps_PSRTime,120)) a

----------把临时表竖列转换横向显示

declare @sql varchar(8000)         --将竖列横向显示

set @sql = 'select ps_PSRTime '

select @sql = @sql + ' , (case wh_whname when ''' + wh_whname + ''' then moneys else 0 end) [' + wh_whname + ']'

from (

select distinct wh_whname from ##tmpa

) as a

set @sql = @sql + ' into ##tmpPPPt from ##tmpa'

exec(@sql)

----------查询临时表

select * from ##tmpa

select * from ##tmpPPPt

----------删除临时表

drop table ##tmpPPPt

drop table ##tmpa


版权声明:本文为weixin_34558810原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。