【发布时间】:2018-09-17 16:03:47
【问题描述】:
我有一张这样的桌子:
id | value
---+------
1 | 10
2 | 5
3 | 11
4 | 8
5 | 9
6 | 7
此表中的数据实际上是成对的值,我需要对其取平均值,结果应该是:
pair_id | pair_avg
--------+---------
1 | 7.5
2 | 9.5
3 | 8
我有一些其他信息(一对标志)也可以帮助它们配对,尽管它们仍然必须按 id 顺序排列。我无法真正改变数据的来源。
由于我更习惯于使用数组而不是 SQL,我所能想到的就是我需要遍历表并对这些对求和。但这并没有让我觉得非常 SQL 风格。
更新
在制作这个最小的例子时,我显然过于简化了。 由于我正在使用的表是多次选择的结果,因此 ID 不会那么干净,很抱歉没有指定这一点。
表格看起来更像:
id | value
----------
1 | 10
4 | 5
6 | 11
7 | 8
10 | 9
15 | 7
结果将用于创建第二个表,我不关心这个新表上的索引,它可以提供自己的,因此给出上面已经指出的结果。
【问题讨论】:
标签: sql postgresql aggregate