【发布时间】:2023-02-22 19:05:45
【问题描述】:
这是我的代码:
select
round(stddev(time_),2) as stddev_time_of_logs,
imei,mob_date,hour_of_day
from hourly_data
group by imei,mob_date,hour_of_day
它产生以下错误:
SQL Error [42883]: ERROR: function stddev(timestamp with time zone) does not exist
这是通常使用聚合函数的方式,所以我不知道这里有什么问题。任何帮助表示赞赏!
【问题讨论】:
-
只有
stddev ( numeric_type );timestamp with time zone类型不能直接传递给它。您需要先将时间戳转换为数字类型。 -
如何将时间戳转换为数字?从逻辑上讲,这似乎不太合理。
-
那么您期望从“时间戳的标准偏差”中得到什么结果?
-
我想看到那个一小时内的平均分散度,例如 [10:10, 10:20, 10:30, 10:40, 10:50] 每小时的分散度比 [10:10 , 10:15, 10:20]
-
基本上,我想查看每个“hour_of_day”的平均离散度,例如 [10:10, 10:20, 10:30, 10:40, 10:50] 在平均时间 10 左右的平均离散度为 15 分钟: 30
标签: postgresql standard-deviation