Re: Window function? - Mailing list pgsql-general

From Tom Lane
Subject Re: Window function?
Date
Msg-id 490058.1654354231@sss.pgh.pa.us
Whole thread Raw
In response to Window function?  (Robert Stanford <rstanford@gmail.com>)
Responses Re: Window function?
List pgsql-general
Robert Stanford <rstanford@gmail.com> writes:
> Can anyone suggest an elegant way to coalesce consecutive rows so only the
> first start time and last end time for each group of events (by input) is
> returned.

Window functions don't change the number of query result rows, so that
idea is a dead end.  The standard way to solve this is GROUP BY:

SELECT Input, MIN(Start) AS Start, MAX(End) AS End
FROM ...
GROUP BY Input
ORDER BY Input -- optional

If MIN/MAX don't quite express what you need to happen, then you
might need to write custom aggregates.  Point though is that
you want aggregation within GROUP BY groups, not windowing.

            regards, tom lane



pgsql-general by date:

Previous
From: Robert Stanford
Date:
Subject: Re: Window function?
Next
From: Jeff Janes
Date:
Subject: Re: Why password authentication failed for user "postgres"?