2010-08-23 51 views
0

我刚开始使用SSRS 2008和SQL Server 2008.我试图创建一个涉及查询某些行业及其子行业的报告(例如某个行业会像'金融部门',其子部门将'银行','转移'等)。 但是,行业和子行业正在发生一些变化,我不知道如何在没有对行业和子行业进行硬编码的情况下生成报告。我想要做的就像是for循环,也许我可以先查询扇区,然后查询每个扇区,查询其子扇区。 有没有人有一个想法如何做到这一点?生成SSRS报告而不用硬编码查询

回答

0

请勿使用循环,而应使用连接。例如,假设你想找到的公司在“金融”部门数量,但你只对一个公司的记录界别分组 - 请尝试以下操作:

select count(*) 
from dbo.company c, dbo.sector s 
where c.subsector = s.subsector and s.sector = 'financial' 

将其扩展到报表中,尝试使用类似下面的查询作为报告的基础:

select c.name company_name, s.subsector, s.sector 
from dbo.company c, dbo.sector s 
where c.subsector = s.subsector and 
s.sector like @sector and 
s.subsector like @subsector 

如果部门和分部门总是填充,然后输入%对每个参数将返回所有的公司;按部门进入财务部门和按部门部门划分的百分比将返回金融部门的所有公司;等等。