Reporting services 如何从ssrs的平均值中获得正确的平均值结果?

Reporting services 如何从ssrs的平均值中获得正确的平均值结果?,reporting-services,report,Reporting Services,Report,我有一份有总数的报告 最后,我得到了路由点的平均值。 我想得到每个路线点的平均值 结果 例如,2041年的平均值为00:00:12 2042年的平均值为00:00:04 我想得到2041年和2042年的平均值 我收到的00:00:12不是真的 对于平均值的平均值和平均值,我使用了相同的表达式: =Format( TimeSerial(0,0, Round( IIf(sum(Fields!N_ANSWERED.Value)=0,

我有一份有总数的报告

最后,我得到了路由点的平均值。 我想得到每个路线点的平均值

结果 例如,2041年的平均值为00:00:12

2042年的平均值为00:00:04

我想得到2041年和2042年的平均值

我收到的00:00:12不是真的

对于平均值的平均值和平均值,我使用了相同的表达式:

=Format(
    TimeSerial(0,0,
        Round(
            IIf(sum(Fields!N_ANSWERED.Value)=0,
            0,
            sum(Fields!T_ANSWERED.Value) / iif(sum(Fields!N_ANSWERED.Value)=0,1,sum(Fields!N_ANSWERED.Value))
            )
        )
    ), 
"HH:mm:ss")

我预计结果是~00:00:08。

平均值的平均值很少是正确的

例如,在2041组中,午餐时间(12:00至13:00)的通话量较高,因为接听电话的时间较长,而早上(8:00)的第一件事通话量较低。假设13:00的平均接听时间是00:00:24,因为有50个电话打进来,但在8:00,只有一个电话需要00:00:02才能接听。现在,这两个小时的平均值不是
(00:00:24+00:00:02)/2=00:00:13
,因为构成平均值的两个样本中的通话量非常不同

实际平均值是该组的平均值乘以该组的呼叫数除以呼叫总数
(00:00:24 x(50/51))+(00:00:02 x(1/51))=00:00:23.57

如果四舍五入到小数点后零位的精度,仍然是00:00:24

这称为加权平均值,因为每组的平均值影响结果,这取决于该组平均值原始计算中的结果数量

这就是为什么你的00:00:12和00:00:04的平均值可能不是00:00:08,这取决于每个组中有多少电话。现在,如果每个组中的呼叫数完全相同,那么平均值的平均值将与加权平均值相同(这是唯一一种得到00:00:08的情况)

每个组中的呼叫总数越接近,平均值越接近正确的结果,但这是一个不可靠的计算。相反,每组结果的数量变化越大,加权平均值越偏向结果中代表性越高的组的平均值

现在,如果2041组的结果很多,2042组的结果很少,那么2042年的00:00:04平均结果几乎不会影响总体平均值,这可能会导致2041年的结果压倒2042年的结果,并且总体平均值与2041年的平均值在您的精度和舍入水平内相同,如上例所示

在2042年的结果集中,有几个小时不见了,这让我觉得情况就是这样

因此,您的计算看起来是正确的-通话所用时间的总和除以通话次数将得出各组和总体平均值的平均值。只是平均值的平均值不会是相同的结果,因为在用于计算总体平均值的数据中,各组的代表性并不相同


根据您的表达,您的总体平均值在00:00:12时看起来是准确的。

平均值的平均值很少是正确的

例如,在2041组中,午餐时间(12:00至13:00)的通话量较高,因为接听电话的时间较长,而早上(8:00)的第一件事通话量较低。假设13:00的平均接听时间是00:00:24,因为有50个电话打进来,但在8:00,只有一个电话需要00:00:02才能接听。现在,这两个小时的平均值不是
(00:00:24+00:00:02)/2=00:00:13
,因为构成平均值的两个样本中的通话量非常不同

实际平均值是该组的平均值乘以该组的呼叫数除以呼叫总数
(00:00:24 x(50/51))+(00:00:02 x(1/51))=00:00:23.57

如果四舍五入到小数点后零位的精度,仍然是00:00:24

这称为加权平均值,因为每组的平均值影响结果,这取决于该组平均值原始计算中的结果数量

这就是为什么你的00:00:12和00:00:04的平均值可能不是00:00:08,这取决于每个组中有多少电话。现在,如果每个组中的呼叫数完全相同,那么平均值的平均值将与加权平均值相同(这是唯一一种得到00:00:08的情况)

每个组中的呼叫总数越接近,平均值越接近正确的结果,但这是一个不可靠的计算。相反,每组结果的数量变化越大,加权平均值越偏向结果中代表性越高的组的平均值

现在,如果2041组的结果很多,2042组的结果很少,那么2042年的00:00:04平均结果几乎不会影响总体平均值,这可能会导致2041年的结果压倒2042年的结果,并且总体平均值与2041年的平均值在您的精度和舍入水平内相同,如上例所示

在2042年的结果集中,有几个小时不见了,这让我觉得情况就是这样

因此,您的计算看起来是正确的-通话所用时间的总和除以通话次数将得出各组和总体平均值的平均值。只是平均值的平均值不会是相同的结果,因为在用于计算总体平均值的数据中,各组的代表性并不相同


根据您的表达式,您的总体平均值在00:00:12时看起来是准确的。

通过引用渲染的单元格而不是数据集字段,您可以非常简单地执行此操作。 1.获取包含详细ave的单元格的名称
=AVG(ReportItems!textbox1.Value)