【发布时间】:2016-05-30 16:40:53
【问题描述】:
我想计算点簇,并为每个簇获取特定属性的总和(比如说,簇中每个点的得分总和)
我已经设法使用ST_ClusterWithin 构建集群,但我无法计算总和。
这是我尝试过的:
SELECT sum(score), unnest(ST_ClusterWithin(coordinates, 0.1)) AS cluster
FROM locations
GROUP BY cluster;
但我收到以下错误ERROR: aggregate functions are not allowed in GROUP BY
如果我删除 GROUP BY,我会得到所有位置的分数总和,这不是我想要的(我想要集群中位置的总和)
【问题讨论】:
-
尝试用另一个选择包装它,并在外部选择中进行分组 .... SELECT sum,cluster FROM(YOUR QUERY) group by cluster
-
无法正常工作。为了在我的外部查询中求和,我需要在我的内部查询中对 score 属性进行分组或聚合(因为 ST_Clusterwithin 已经是一个聚合函数)
标签: postgresql postgis