您的位置:首页 > 家用电器 > 厨房电器 > 什么是SQL数据透视表?

什么是SQL数据透视表?

luyued 发布于 2011-02-03 13:45   浏览 N 次  

示例数据

















为了更好地了解一个数据透视表,一些销售数据的例子就是在这里列出。复制到Microsoft SQL Server Management Studio中尝试以下的例子。

创建表#PivotTestTable
(的CustName为varchar(8),
Item_Type为varchar(8),
Item_Amount数字(6,2))

插入#PivotTestTable
选择'杰森','计算机',435.34
工会
选择'杰森','软件',243.54
工会
选择'杰森','显示器',158.23
工会
选择'艾莉森','计算机',345.89
工会
选择'艾莉森','软件',78.78
工会
选择'艾莉森','显示器',123.45


开始UnPivoted数据



当临时表,#PivotTestTable,是质疑,结果如下。

的CustName Item_Type Item_Amount
-------- --------- -----------
艾莉森计算机345.89
艾莉森监视器123.45
艾莉森软件78.78
贾森计算机435.34
贾森监视器158.23
贾森软件243.54

正如你可以看到,结果集显示了两个客户,艾莉森和贾森,谁购买了三种不同类型的项目。有6个为两个客户的数据行。如果我们希望看到在每一个客户的行数据,我们将使用数据透视表,以达到预期的效果。


由支点枢轴功能

















微软SQL Server有一个支点到SQL Server内建的功能。这是一个带有#PivotTestTable数据的例子。

选择
作为Total_Sales_By_Cust的CustName,
电脑,
监视器,
软件


选择
的CustName,
Item_Type,
Item_Amount
从#PivotTestTable
)1
枢纽

总结(Item_Amount)
的Item_Type在(计算机,显示器,软件)
)乙

这个查询将返回原来的6成两个单独的列行无所不能每个项目销售型行。该结果集从该查询生成的是在这里:

Total_Sales_By_Cust计算机监控软件
------------------- --------- -------- ---------
艾莉森345.89 123.45 78.78
贾森435.34 158.23 243.54


通过汇总病例枢轴声明

















通过使用聚合函数(求和,平均值,最小值,最大值)围绕在一个SQL查询语句时,我们能够实现作为枢纽功能较少的工作相同的结果。

选择
作为Total_Sales_By_Cust的CustName,
总结(案例Item_Type当'电脑',那么Item_Amount完)计算机,
总结(案例Item_Type当'显示器',那么Item_Amount完)监视器,
总结(案例Item_Type当'软件',那么Item_Amount完)软件
从#PivotTestTable
通过集团的CustName

这个查询将返回同样的结果准确的榜样,是以前只偏爱其中枢纽型使用。


常见的错误与数据透视表

















一个常见的错误,以创建一个数据透视表上创建一个源表连接回来。这将产生不可靠的结果,应该避免。这个例子是一个严格的什么是不该做的例子。在此示例的结果将是相同的,但是这个样本不会在所有情况下工作。

选择
p1.CustName,
p1.Item_Amount计算机,
p2.Item_Amount作为显示器,
p3.Item_Amount作为软件
从#PivotTestTable小一
内蒙古加入#PivotTestTable的P2
关于p1.CustName = p2.CustName
和p2.Item_Type ='显示器'
内蒙古加入#PivotTestTable小三
关于p1.CustName = p3.CustName
和p3.Item_Type ='软件'
在WHERE p1.Item_Type ='计算机'






柱的空间

如何阅读加大码文件

安立新的专栏

ASF to iPhone

Maximize The Green Efficiency Of Your Multi Site

Moodmixer-Channelmanager

如何匹配的Windows媒体播放器使用iTunes

如何使一个在Photoshop边巴顿

司空冲的家园

我的乐园

MPEG4 To QT

Real Player FILES to VOB

宝丽电影类型

广告赞助商