CountDistinct出错了计算

问题描述 投票:1回答:1

所以我试图计算真假两个字段(称为[紧急])的数量乘以常规或紧急预订的标准价格。

目前,这只适用于紧急收入计算(如下所示):

=CountDistinct(Fields!Emergency.Value = True) * 3.0

并且假设有两个记录,紧急情况字段是真的,因为紧急预订的价格是3.00英镑,它输出总共6.00英镑

虽然常规收入计算如下:

=CountDistinct(Fields!Emergency.Value = False) * 1.5

这个输出的四个记录的紧急情况是假的,定期预订的价格是1.50英镑是3.00英镑,而预期的输出应该是6.00英镑

我不确定是什么导致了这个问题,因为这是我第一次使用SSRS

c# sql reporting-services reporting ssrs-2012
1个回答
1
投票

您正在计算布尔表达式的不同值。这需要两个值,这就是为什么你得到2。

我怀疑你只想计算真值的数量。我不知道如何在SSRS中表达这一点,但在SQL中,您可以这样做:

sum(case when Fields!Emergency.Value = 'False' then 1 else 0 end)
© www.soinside.com 2019 - 2024. All rights reserved.