【发布时间】:2020-03-22 11:16:06
【问题描述】:
我正在处理从许多 loggerid 中提取的 GPS 数据,并且我的表有连续的行,其中 lat 和 lon 重复。我只想保留每个连续经纬度重复项的第一行,将每个连续纬度和经度重复项的最后一行的 datecon 和 timecon 存储在第一行的 enddate 和 endtime 列中,并删除该连续纬度和经度的所有行都重复,包括最后一行。
这是我的桌子的样子:
id, loggerid, datecon, timecon, lat, lon
200, 1, 2018-07-18, 07:04:10, 16.694834, 100.319834
201, 1, 2018-07-18, 07:36:30, 16.694834, 100.319834
202, 1, 2018-07-18, 08:11:00, 16.694834, 100.319834
203, 1, 2018-07-18, 08:49:25, 16.851309, 100.315957
204, 1, 2018-07-18, 09:20:58, 16.851309, 100.315957
300, 2, 2018-08-20, 13:52:22, 16.947631, 100.321598
301, 2, 2018-08-20, 14:27:34, 16.947631, 100.321598
302, 2, 2018-08-20, 14:59:11, 16.392313, 100.395439
我想要达到的输出:
id, loggerid, datecon, timecon, enddate, endtime, lat, lon
200, 1, 2018-07-18, 07:04:10, 2018-07-18, 08:11:00, 16.694834, 100.319834
203, 1, 2018-07-18, 08:49:25, 2018-07-18, 09:20:58, 16.851309, 100.315957
300, 2, 2018-08-20, 13:52:22, 2018-08-20, 14:27:34, 16.947631, 100.321598
302, 2, 2018-08-20, 14:59:11, [null], [null], 16.392313, 100.395439
有人知道解决办法吗?
【问题讨论】:
标签: sql postgresql group-by postgis gaps-and-islands