如何从报告服务2005中的Count()函数中排除空值?

时间:2012-08-02 14:58:57

标签: sql reporting-services visual-studio-2005

我正在创建一个报告,其中包含类似帕累托的图表和订单类型表以及每种订单类型的单位数。从我正在使用的存储过程返回的子集包括一个名为WorkItemId的字段,如果该值为null,则表示该项不被计算。如何在不包含具有null WorkItemId的值的情况下计算报表中的订单类型?现在我正在使用表达式:

Count(Fields!OrderType.Value) 

计算特定订单类型的每个单位。

谢谢!

编辑: WorkItemId 是不能为空的,订单类型

其他报告中需要WorkItemId中的空值,因此我不能简单地在SQL中过滤它们。

3 个答案:

答案 0 :(得分:7)

您可以使用类似

的内容
Sum(IIF(IsNothing(Fields!WorkItemId.Value),0,1))

答案 1 :(得分:1)

在SQL子句中使用where子句:

 where WorkItemId is not null

希望它有所帮助。

答案 2 :(得分:0)

想出我自己的问题......再次

由于我的表中的行已按订单类型分组,我只需要输入

Fields!WorkItemId.Value

进入Count函数而不是OrderType,因为Count()会自动取消空值。