value from max row in group by

From: Gary Stainburn <gary(dot)stainburn(at)ringways(dot)co(dot)uk>
To: pgsql-sql(at)postgresql(dot)org
Subject: value from max row in group by
Date: 2013-07-25 17:45:51
Message-ID: 201307251845.51079.gary.stainburn@ringways.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hi folks,

I need help please.

I have a table of trip section details which includes a trip ID, start time as
an offset, and a duration for that section.

I need to extract the full trip duration by adding the highest offset to it's
duration. I can't simply use sum() on the duation as that would not include
standing time.

Using the data below I would like to get:

1 | 01:35:00
2 | 01:35:00
3 | 01:06:00
4 | 01:38:00
5 | 01:03:00
6 | 01:06:00

from

timetable=> select stts_id, stts_offset, stts_duration from
standard_trip_sections order by stts_id, stts_offset;
stts_id | stts_offset | stts_duration
---------+-------------+---------------
1 | 00:00:00 | 00:18:00
1 | 00:19:00 | 00:26:00
1 | 00:47:00 | 00:13:00
1 | 01:13:00 | 00:22:00
2 | 00:00:00 | 00:18:00
2 | 00:20:00 | 00:09:00
2 | 00:29:00 | 00:17:00
2 | 00:50:00 | 00:13:00
2 | 01:13:00 | 00:22:00
3 | 00:00:00 | 00:20:00
3 | 00:28:00 | 00:15:00
3 | 00:44:00 | 00:22:00
3 | 00:48:00 | 00:20:00
4 | 00:00:00 | 00:20:00
4 | 00:28:00 | 00:15:00
4 | 00:48:00 | 00:13:00
4 | 01:01:00 | 00:13:00
4 | 01:18:00 | 00:20:00
5 | 00:00:00 | 00:18:00
5 | 00:20:00 | 00:09:00
5 | 00:29:00 | 00:17:00
5 | 00:50:00 | 00:13:00
6 | 00:00:00 | 00:15:00
6 | 00:20:00 | 00:13:00
6 | 00:33:00 | 00:13:00
6 | 00:46:00 | 00:20:00
(26 rows)

timetable=>

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Gary Stainburn 2013-07-25 17:57:10 Re: value from max row in group by
Previous Message Luca Ferrari 2013-07-24 11:27:39 Re: monthly statistics