尝试查询ssrs中的excel数据源时出现奇怪的错误

时间:2015-04-14 13:54:11

标签: ssrs-2012

我正在SSRS中编写一份报告,该报告使用Excel电子表格作为数据源。我希望在名为F2的电子表格中有一列。我想使用此SQL来执行计数:

Select Sum(Case When F2 = 'I' then 1 end) as IncidentCount, 
       Sum(Case When F2 = 'R' then 1 end) as RequestCount, 
       Sum(Case When F2 = 'P' then 1 end) as ProblemCount
From [Ticket Detail$]

当我点击OK退出查询设计器时,我收到此错误:

ERROR [42000] [Microsoft][ODBC Excel Driver] Syntax error (missing operator) in query expression 'Sum(Case When F2 = 'I' then 1 end)'.

我是否可以针对excel数据源运行此类型的SQL?我怎样才能得到我想要的计数?

1 个答案:

答案 0 :(得分:1)

您应该能够通过表达式在SSRS中轻松处理这个问题。如果从数据集中选择*,则会在Tablix中使用这样的表达式:

=sum(iif(Dataset1!Type.Value="I", 1, 0))

对于文本框,它看起来像:

=sum(iif(Fields!Type.Value="I", 1, 0), "Dataset1")