SQL Server 交叉表查询 case

网络编程 2025-03-24 11:13www.168986.cn编程入门

今天下午我投身于一项重要任务,那就是将aess数据库中的交叉表数据迁移到SQL server数据库中。在SQL server中,我们不能使用transfrom方法,这让我遇到了一些挑战。但我通过查找相关资料,找到了使用case方法进行转换的解决方案。

让我们看一下原始的aess代码。它的结构涉及到两个表:landundertake和appraiser。代码的主要功能是通过交叉表的方式展示这两个表之间的关系。具体来说,它是根据valuerId和quarterId进行连接,并通过valuerGrade进行分组展示。

```sql

SELECT

appraiser.quarterID,

landUndertake.landcode,

CASE

WHEN landUndertake.appraiserGrade = 'appraiserID1' THEN landUndertake.appraiserID

ELSE NULL

END AS appraiserID_1,

CASE

WHEN landUndertake.appraiserGrade = 'appraiserID2' THEN landUndertake.appraiserID

ELSE NULL

END AS appraiserID_2

FROM

landUndertake

INNER JOIN

appraiser ON landUndertake.quarterID = appraiser.quarterID AND landUndertake.appraiserID = appraiser.appraiserID

GROUP BY

appraiser.quarterID, landUndertake.landcode, landUndertake.appraiserGrade, landUndertake.appraiserID

```

上一篇:ThinkPHP框架实现数据增删改 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by