select *
from (select OST.TypeName as OSName ,bur.BureauName,osrr.[ReceiverNumber],osrr.[ReceiverDateTime]
FROM [OA_OfficeSuppliestRequisitionedRecord] as OSRR
left join OA_Employee as UserInfo on osrr.SuppliesUserId=UserInfo.EmpID
left join [SYS_Bureau] as Bur on UserInfo.BureauID=Bur.BureauID
left join OA_OfficeSuppliesType as OST on OSRR.SuppliesType=OST.ID)as b
pivot( max( b.[ReceiverNumber] ) for b.BureauName in (办公室,办信处)) m
上面是行转列的sql语句。
下面是查询出来的结果,但是我想在sql语句中加入判断,ReceiverNumber为null就返回0 但是不知道该在哪里加。
求指导。关联的表好几张,就没有直接放上来。

吐槽一下,csdn终于能直接上传图片了。
------解决方案--------------------
select *
from (select OST.TypeName as OSName ,bur.BureauName,osrr.[ReceiverNumber],osrr.[ReceiverDateTime]
FROM [OA_OfficeSuppliestRequisitionedRecord] as OSRR
left join OA_Employee as UserInfo on osrr.SuppliesUserId=UserInfo.EmpID
left join [SYS_Bureau] as Bur on UserInfo.BureauID=Bur.BureauID
left join OA_OfficeSuppliesType as OST on OSRR.SuppliesType=OST.ID)as b
pivot( max( isnull(b.[ReceiverNumber],0) ) for b.BureauName in (办公室,办信处)) m
试试。从2012年我开始回帖开始就已经能上图了