我正在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?我怎样才能得到我想要的计数?
答案 0 :(得分:1)
您应该能够通过表达式在SSRS中轻松处理这个问题。如果从数据集中选择*,则会在Tablix中使用这样的表达式:
=sum(iif(Dataset1!Type.Value="I", 1, 0))
对于文本框,它看起来像:
=sum(iif(Fields!Type.Value="I", 1, 0), "Dataset1")