SQL Server 交叉表查詢 case
更新時間:2011年12月26日 23:58:06 作者:
今天下午忙于將access數據庫中的交叉表轉到SQL server數據庫中,在SQL server中,不支持transfrom方法,查找相關資料,找到使用case方法進行轉換
代碼如下所示:
表landundertake結構如下所示:

表appraiser結構如下所示:

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
交叉表查詢結果如下所示:

相關文章
對有insert觸發(fā)器表取IDENTITY值時發(fā)現的問題
趕快查了下msdn,原來@@IDENTITY還有這么多講究2009-06-06
SQL數據庫優(yōu)化大總結之百萬級數據庫優(yōu)化方案
網上關于SQL優(yōu)化的教程很多,但是比較雜亂。近日有空整理了一下,寫出來跟大家分享一下,其中有錯誤和不足的地方,還請大家糾正補充2015-12-12

