SSRS:使用SQL2008教程学习Reporting Services之数据库AdventureWorks2008问题_学习笔记1

首先声明我是菜鸟,刚开始学习Reporting Services。在学习教程中的一点笔记。

从SQL2005开始,微软就提供了强大的Reporting Services功能,的确好用,对于经常需要出复杂报表的朋友可谓是一大欢喜。

SQL2008中的SQL Server教程是一本很好的学习资料,我的是SQL2008非R2版,Reporting Services章节中需要用到微软示例数据库AdventureWorks2008。根据教程的提示只能找到AdventureWorks这个示例数据库。地址为:

http://msftdbprodsamples.codeplex.com/releases/view/55926

下载下来,安装完毕,开始按照教程一步步操作,问题来了,安装后没有AdventureWorks2008这个数据库,取而代之的是AdventureWorks,观察了一下结构基本一样,不影响学习,部分SQL有变动,具体情况如下:

PS:若在报表中输入中文后显示为乱码,请修改字体格式为宋休、微软雅黑等支持中中文显示的字体即可。

》》教程:创建基本表报表——第 3 课:为表报表定义数据集 (Reporting Services),SQL变更部分为:

FROM Sales.SalesPerson sp
   INNER JOIN Sales.SalesOrderHeader AS soh
      ON sp.SalesPersonID = soh.SalesPersonID

》》教程:向报表添加参数——第 1 课:添加按日期筛选报表的参数,SQL变更部分为:

FROM Sales.SalesPerson sp
   INNER JOIN Sales.SalesOrderHeader AS soh
      ON sp.SalesPersonID = soh.SalesPersonID

第二部分SQL中同样将sp.BusinessEntityID换为sp.SalesPersonID即可。

》》教程:向报表添加参数——第 2 课:添加创建可用值列表的参数

第一部分SQL变更部分为:

FROM Sales.SalesPerson sp
   INNER JOIN Sales.SalesOrderHeader AS soh
      ON sp.SalesPersonID = soh.SalesPersonID

第二部分SQL变更部分为:

SELECT SP.SalesPersonID, C.FirstName, C.LastName
FROM   Sales.SalesPerson AS SP INNER JOIN
     HumanResources.Employee AS E ON E.EmployeeID = SP.SalesPersonID INNER JOIN
     Person.Contact AS C ON C.ContactID = E.EmployeeID
ORDER BY SP.SalesPersonID

教程中让选择290的用户,由于无对应数据 可以选择280

》》教程:向报表添加参数——第 3 课:添加在列表中选择多个值的参数

第一部分SQL同上:

sp.BusinessEntityID换为sp.SalesPersonID即可。

》》教程:创建基本矩阵报表——第 1 课:为矩阵报表定义数据集查询, SQL变更部分为

FROM Sales.SalesPerson AS SP 
INNER JOIN Sales.SalesOrderHeader AS SOH
      ON SP.SalesPersonID = SOH.SalesPersonID
   INNER JOIN Person.Contact AS P 
      ON P.ContactID = SP.SalesPersonID

a

原文地址:https://www.cnblogs.com/greatwang/p/2648263.html