按进程名称分组的日期时间列的标准偏差

Standard Deviation over Datetime column grouped by Processname

我有一个 Table,其中包含字段 ProcessNameStartDateEndDate。我需要知道 EndDate 的标准偏差,以便知道我可以等待进程完成的时间限制。基于此标准偏差,如果某些进程花费太多时间,将发送电子邮件至 运行。

我的想法是使用以下查询:

select
    ProcessName,
    STDEV(tm)
from (
    select
        ProcessName,
        cast(EndDate as decimal(18,6)) tm
    from Reports..ExecutionControl
) t1
group by ProcessName

但是,首先我不知道它是什么returns(是否是百分比),也许这是缺乏统计理解,而且我需要得到一个过程的时间限制可以取,不计算。

有人可以帮我解决这个问题吗?在此先感谢大家!

嗯,我不确定你如何使用没有平均值的标准偏差,但这是你的问题。

我期望这样的查询:

select ProcessName,
       STDEV(dateadiff(second, Startdate, Enddate)) as stdev_dur
from Reports..ExecutionControl
group by ProcessName;

即标准差是根据持续时间计算的,而不是EndDate