jre*_*121 16 sql-server reporting-services
我有两张桌子的报告.第一个表是客户列表,详细说明了每个客户端,这些客户端分为三个类别,每个客户端具有不同的项目.SQL将client_table与client_items表连接起来(每个客户端可以有多个项目)SQL结果如下所示:
Type ClientID ItemID
A 1 1
A 3 1
A 3 2
B 2 1
B 4 3
C 5 2
Run Code Online (Sandbox Code Playgroud)
我的第二个表将从各种类型的组合中返回不同ClientID的计数:
总计(A + B + C) - 我已经找到了这个 =CountDistinct(Fields!ClientID.Value,"datasource1")
类型B + C - 类型为B或C的不同ClientID
类型C - 类型为C的不同ClientID
我希望这很清楚,如果不是让我知道我需要添加什么来清除它.
Ian*_*ton 25
CountDistinct() 计算非空值,因此您可以使用表达式将那些您不想计算的值归零,并执行与您的第一个值类似的操作.
B + C型:
=CountDistinct
(
IIf
(
Fields!Type.Value = "B" or Fields!Type.Value = "C"
, Fields!ClientId.Value
, Nothing
)
, "datasource1"
)
Run Code Online (Sandbox Code Playgroud)
C型:
=CountDistinct
(
IIf
(
Fields!Type.Value = "C"
, Fields!ClientId.Value
, Nothing
)
, "datasource1"
)
Run Code Online (Sandbox Code Playgroud)