SQL Server 交叉表查詢(xún) case

今天下午忙于將access數(shù)據(jù)庫(kù)中的交叉表轉(zhuǎn)到SQL server數(shù)據(jù)庫(kù)中,在SQL server中,不支持transfrom方法,查找相關(guān)資料,找到使用case方法進(jìn)行轉(zhuǎn)換

代碼如下所示:

表landundertake結(jié)構(gòu)如下所示:

表appraiser結(jié)構(gòu)如下所示:

access代碼:
代碼如下:
TRANSFORM First(Landundertake.valuerId) AS valuerId之First
SELECT Appraiser.quarterId, Landundertake.landCode
FROM Landundertake INNER JOIN Appraiser ON (Landundertake .valuerId = Appraiser.valuerID) AND (Landundertake .quarterId = Appraiser.quarterId)
GROUP BY Appraiser.quarterId, Landundertake .landCode
PIVOT Landundertake .valuerGrade;

SQL server代碼:
代碼如下:
select dbo.appraiser.quarterID,dbo.landUndertake.landcode,case dbo.landUndertake.appraiserGrade when ‘appraiserID1’ then dbo.landundertake.appraiserID else null END as appraiserID,case dbo.landUndertake.appraiserGrade when ‘appraiserID2’ then dbo.landundertake.appraiserID else null END as appraiserID1
from dbo.LandUndertake inner join
dbo.Appraiser ON dbo.LandUndertake.quarterID=dbo.appraiser.quarterID and dbo.landundertake.appraiserID=DBO.Appraiser.appraiserID
Group by dbo.appraiser.quarterID,dbo.landUndertake.landcode,dbo.landundertake.appraiserGrade,dbo.landundertake.appraiserID
交叉表查詢(xún)結(jié)果如下所示:

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊5 分享