【发布时间】:2015-12-10 09:21:00
【问题描述】:
这可能不是很正确的问题标题,但未能找到更好的名称。
我有以下表结构:
id | lat | lon | trajectory_id | time
1 | 15.8 | 17.1 | 162 | 10:01
2 | 11.5 | 59.7 | 162 | 10:02
3 | 16.4 | 79.9 | 162 | 10:03
4 | 29.5 | 10.3 | 180 | 11:12
5 | 58.2 | 11.1 | 180 | 11:13
6 | 54.5 | 14.1 | 180 | 11:14
7 | 14.9 | 15.2 | 166 | 13:40
8 | 15.0 | 13.1 | 166 | 13:42
我想获得每个轨迹的第一个点(按时间排序)。这意味着:
id | lat | lon | trajectory_id | time
1 | 15.8 | 17.1 | 162 | 10:01
4 | 29.5 | 10.3 | 180 | 11:12
7 | 14.9 | 15.2 | 166 | 13:40
我该怎么做?我尝试按轨迹 ID 分组,然后应用限制 1,但它限制了轨迹,而不是点本身。
【问题讨论】:
-
是和sql server还是其他数据库有关?
-
我们不能使用 group by track_id 和 order by time 吗?
标签: sql postgresql group-by limit