SQL Server 交叉表查询 case_MsSql

代码如下所示:

表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

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

时间: 2024-10-04 15:50:33

SQL Server 交叉表查询 case_MsSql的相关文章

Sql Server 数据库表查询结果导出为excel文件

相信大家常常会遇到将SqlServer查询结果导出到Excel的问题.如果导出的次数少,直接"Save Results As..."就是了; 1.1准备好查询语句 1.2选择数据库,启动导入和导出向导 1.3选择数据源 1.4选择目标 1.5 1.6 1.7 1.8 后续步骤不再附图,一直点"下一步"按钮就好. 2.但是当要分别在每个表取样,那就相当麻烦了.今天就为大家提供一个脱离office组件的可以将语句结果导出到Excel的过程,希望会对大家有帮助! ---导

SQL Server多表查询优化方案集锦_MsSql

SQL Server多表查询的优化方案是本文我们主要要介绍的内容,本文我们给出了优化方案和具体的优化实例,接下来就让我们一起来了解一下这部分内容. 1.执行路径 ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用:我们发现,单表数据的统计比多表统计的速度完全是两个概念.单表统计可能只要0.02秒,但是2张表联合统计就 可能要几十秒了.这是因为ORACLE只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询..数据库管理员必须在init.o

SQL Server多表查询优化方案集锦

SQL Server多表查询的优化方案是本文我们主要要介绍的内容,本文我们给出了优化方案和具体的优化实例,接下来就让我们一起来了解一下这部分内容. 1.执行路径 ORACLE的这个功能大大地提高了SQL的执行性能并节省了内存的使用:我们发现,单表数据的统计比多表统计的速度完全是两个概念.单表统计可能只要0.02秒,但是2张表联合统计就 可能要几十秒了.这是因为ORACLE只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询..数据库管理员必须在init.o

Mysql5 实现交叉表查询

交叉表.行列转换和交叉查询经典 一.什么是交叉表 "交叉表"对象是一个网格,用来根据指定的条件返回值.数据显示在压缩行和列中.这种格式易于比较数据并辨别其趋势.它由三个元素组成: 行 列 摘要字段 "交叉表"中的行沿水平方向延伸(从一侧到另一侧).在上面的示例中,"手套"(Gloves) 是一行. "交叉表"中的列沿垂直方向延伸(上下).在上面的示例中,"美国"(USA) 是一列. 汇总字段位于行和列的交叉

SQL Server执行逻辑查询时,SQL被解析的步骤

以下这段对SQL Server执行逻辑查询时,SQL被解析的步骤.摘自<SQL Server 2005技术内幕 T-SQL查询>.这是一本非常好的讲解SQL Server的书,整个SQL Server 2005技术内幕系列都是,个人强烈推荐. 我一直认为,学好任何一种技术,没有什么比学好它的基础知识和底层原理更重要.如果你相信有"捷径",那么这就是唯一的"捷径".了解这些,有助于你更快地掌握技术最本质的核心. 我真希望早点看到那些好书,也希望看到这篇文章

SQL Server 2000分布式查询:OLE DB连接

概述和术语 在 MicrosoftSQL Server 2000 中,分布式查询允许SQL Server用户访问基于SQL Server的服务器以外的数据(位于其他运行SQL Server的服务器或是具有OLE DB接口的其他数据源中).OLE DB提供了统一的方式来访问异类数据源中的列表数据. 在本文中,分布式查询是指任何引用了一个或多个外部OLE DB数据源中表或行集的SELECT.INSERT.UPDATE或DELETE语句. 远程表是指存储于 OLE DB 数据源中并且不在执行查询的SQ

奇怪的现象-SQL Server 2008 r2 查询效率问题(求关注求关注求关注)

问题描述 SQL Server 2008 r2 查询效率问题(求关注求关注求关注) 我有一张表,共有56个字段.发现以下情况: 1.我在我的开发机执行sql语句 set statistics time on SELECT * FROM [eShop].[dbo].[Product] (多次执行,时间平均在90-100ms) 2.在服务器上有相同的数据库,相同的表,相同的内容.执行同样SQL语句,执行结果为: (多次执行,时间平均在250ms) 3.在我的开发机连服务器的数据库,执行该语句,执行结

sql server怎么模糊查询某几列

问题描述 sql server怎么模糊查询某几列 小白一个,正在做一个管理系统,有第一周到第二十周的数据,怎么每次通过写入第几周,把本周的数据查询出来呢 解决方案 在数据查询的时候,有完整查询和模糊查询之分.在Access和SQL Server中使用模糊查询有一下几种查询: 1.用_通配符查询 "_"号表示任意单个字符,该字符号只能匹配一个字符,利用"_"号可以作为通配符组成匹配模式进行查询."_"符号可以放在查询条件 的任意位置,且只能代表一个

SQL Server 树形表非循环递归查询的实例详解_MsSql

很多人可能想要查询整个树形表关联的内容都会通过循环递归来查...事实上在微软在SQL2005或以上版本就能用别的语法进行查询,下面是示例. --通过子节点查询父节点 WITH TREE AS( SELECT * FROM Areas WHERE id = 6 -- 要查询的子 id UNION ALL SELECT Areas.* FROM Areas, TREE WHERE TREE.PId = Areas.Id ) SELECT Area FROM TREE --通过父节点查询子节点 WIT