加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

postgresql – 在聚合函数之前对分组行进行排序

发布时间:2020-12-13 15:57:48 所属栏目:百科 来源:网络整理
导读:我有一个带点几何的postgis表. 点数表: id | uid | date | geom 具有相同uid的点是相同的目标.我正在尝试使用ST_MakeLine的GROUP BY uid创建一个完整的目标LineString. SELECT uid,ST_MakeLine(geom)FROM pointsGROUP BY uid 这有效,但我想确保点的顺序正确
我有一个带点几何的postgis表.

点数表:

id | uid | date | geom

具有相同uid的点是相同的目标.我正在尝试使用ST_MakeLine的GROUP BY uid创建一个完整的目标LineString.

SELECT uid,ST_MakeLine(geom)
FROM points
GROUP BY uid

这有效,但我想确保点的顺序正确.
我试着通过在分组之前添加ORDER BY日期来做到这一点.

SELECT uid,ST_MakeLine(geom)
FROM points
ORDER BY date <-- does not work
GROUP BY uid

ERROR: syntax error at or near "GROUP"

有没有办法在分组行输入聚合函数之前对其进行排序?

解决方法

ORDER BY子句可以放在聚合参数的末尾.

SELECT uid,ST_MakeLine(geom ORDER BY date)
FROM points
GROUP BY uid

http://www.postgresql.org/docs/9.1/static/sql-expressions.html#SYNTAX-AGGREGATES

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读