gpt4 book ai didi

sql - Postgresql使用sql将相邻数据平均到新表中

转载 作者:行者123 更新时间:2023-11-29 14:34:15 25 4
gpt4 key购买 nike

这是数据结构。 date 是唯一的但可能会丢失(意味着跳转日期但不是 NULL)并且乱序。如果记录数为奇数,则省略最后一条记录。

date       | value | value2
-----------+-------+--------
2017-10-11 | 10 | 0.2
2017-10-13 | 22 | 0.3
2017-10-12 | 6 | 0.0
2017-10-14 | 20 | 0.6
...

我想使用要合并记录的值的平均值,将最近的两条记录与新值合并。 使用SQL

期待结果。

date       | value | value2
-----------+-------+--------
2017-10-11 | 8 | 0.1
2017-10-13 | 21 | 0.45
...

2017-10-11 merged 2017-10-11 and 2017-10-12, i.e. value = AVG(10,6) = 8
2017-10-13 merged 2017-10-13 and 2017-10-14, i.e. value = AVG(22,20) = 21

最佳答案

select min(date), avg(value), avg(value2)
from (
select *, (row_number() over(order by date)-1)/2 grp
from Table1
) X
group by grp

演示 sqlfiddle.com

关于sql - Postgresql使用sql将相邻数据平均到新表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47415905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com