云服务器网:购买云服务器和VPS必上的网站!

的功能MSSQL中利用Pivot实现数据转换的初探

MSSQL中利用Pivot实现数据转换的初探
SQL Pivot 是一种遭到大家欢迎的SQL功能,它能够让我们将标准的行/列表格转换成区别的行/列表格,以实现数据分析的需求。 MSSQL作为商业级数据库管理系统,具有优良的查询表达能力,其中集成的 Pivot功

MSSQL中利用Pivot实现数据转换的初探

SQL Pivot 是一种遭到大家欢迎的SQL功能,它能够让我们将标准的行/列表格转换成区别的行/列表格,以实现数据分析的需求。 MSSQL作为商业级数据库管理系统,具有优良的查询表达能力,其中集成的 Pivot功能更是非常的实用和完备。以下图所示:

![图1](picture/picture1.jpg)

作为一个基本的使用处景,假定我们有一张表,记录了某公司每月份各个城市的营收情况。而你需要以每一个城市为行,月份为列,来得到实际的报表。

“`sql

SELECT * FROM [Revenue Report]


可以用Pivot完本钱次的数据变换。

```sql
SELECT City, [Jan], [Feb],[March] FROM
(SELECT City, Month, Revenue FROM [Revenue Report]) AS SourceTable
PIVOT
(SUM(Revenue) FOR Month IN([Jan],[Feb],[March])) AS PivotTable ;

简单的查询语句可以在无需任何中间表的情况下轻而易举地完成我们所要求的表示格式转变,而 Pivot 就是用于实现此功能的关键。

正如上面提到的,SQL Server 中的 Pivot 功能要求创建一个包括上述希望变换出来的列名的中间表。 另外,我们还需要制定一个列用于记录要总结的数据,并使用一个原列来记录新列的标识:通过设置PIVOT 关键字的INSIDE参数来实现,它产生的结果就是一个新的列表,让原表的列构成新记录的行,把原表的记录构成新表的列,完成一次表示格式的转变。

本文仅是对 MSSQL 中 Pivot 功能的粗略介绍,实际上在平常数据分析进程中,Pivot 除能够满足一般基本的数据转换要求之外,还可以利用到具有多个区别种别的复杂场景中,比如对具有动态的数据范围的多维度数据分析等,实现分析效果十分显著。

本文来源:https://www.yuntue.com/post/208026.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注