带窗口函数的平均时间戳postgresql

带窗口函数的平均时间戳postgresql,postgresql,timestamp,Postgresql,Timestamp,我的代码有点问题。也许有人能帮忙。 我有一张有数百名用户的桌子,每个人都开始听有声读物。然后他说完,过了一会儿又开始听。我需要确定第一次和第二次开始听的平均时间。不考虑所有其他的试镜(可能有几千次,也可能只有一次)。 [链接到底部两个用户的示例表。组合需要使用的内容] 我试图编写代码,但首先,当然,我不能计算时间戳的平均值,其次,在我看来,它仍然不能给出期望的结果 我只能这样写 SELECT user_id, AVG(started_at) OVER(PARTITION BY user_id

我的代码有点问题。也许有人能帮忙。 我有一张有数百名用户的桌子,每个人都开始听有声读物。然后他说完,过了一会儿又开始听。我需要确定第一次和第二次开始听的平均时间。不考虑所有其他的试镜(可能有几千次,也可能只有一次)。 [链接到底部两个用户的示例表。组合需要使用的内容]

我试图编写代码,但首先,当然,我不能计算时间戳的平均值,其次,在我看来,它仍然不能给出期望的结果

我只能这样写

SELECT user_id, AVG(started_at) 
OVER(PARTITION BY user_id ORDER BY started_at 
ROWS BETWEEN UNBOUNDED PRECEDING AND 1 FOLLOWING) 
FROM listenings
我很高兴能得到任何帮助