今天下午忙于将access数据库中的交叉表转到SQL server数据库中,在SQL server中,不支持transfrom方法,查找相关资料,找到使用case方法进行转换。

代码如下所示:

表landundertake结构如下所示:

SQL Server 交叉表查询——case

表appraiser结构如下所示:

SQL Server 交叉表查询——case

access代码:

1 TRANSFORM First(Landundertake.valuerId) AS valuerId之First
2 SELECT Appraiser.quarterId, Landundertake.landCode
3 FROM Landundertake INNER JOIN Appraiser ON (Landundertake .valuerId = Appraiser.valuerID) AND (Landundertake .quarterId = Appraiser.quarterId)
4 GROUP BY Appraiser.quarterId, Landundertake .landCode
5 PIVOT Landundertake .valuerGrade;

 

 

SQL server代码:

1 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
2 from dbo.LandUndertake inner join
3 dbo.Appraiser ON dbo.LandUndertake.quarterID=dbo.appraiser.quarterID and dbo.landundertake.appraiserID=DBO.Appraiser.appraiserID
4 Group by dbo.appraiser.quarterID,dbo.landUndertake.landcode,dbo.landundertake.appraiserGrade,dbo.landundertake.appraiserID

 交叉表查询结果如下所示:

SQL Server 交叉表查询——case

相关文章:

  • 2022-12-23
  • 2021-08-12
  • 2022-12-23
  • 2022-01-13
  • 2021-09-25
  • 2021-12-05
  • 2021-08-27
猜你喜欢
  • 2021-12-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-03
  • 2021-06-27
  • 2021-12-04
相关资源
相似解决方案