From: | Dennis Björklund <db(at)zigo(dot)dhs(dot)org> |
---|---|
To: | "Robert Haas" <robertmhaas(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Documentation, window functions |
Date: | 2010-09-24 03:34:28 |
Message-ID: | 2a28107e5b0a169b89031043a5b3e326.squirrel@zigo.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> On Wed, Sep 22, 2010 at 6:03 AM, Dennis Björklund <db(at)zigo(dot)dhs(dot)org> wrote:
> But I confess that I'm sort of murky on how ORDER affects the window
> frame, or how to rephrase this more sensibly.
The rows included in the calculation of the window function are per default
RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
where CURRENT ROW include all the rows that are equal to the row you are
at according to the ordering. So if you say order by name then all the
rows up to your name and all rows with the same name are included, not
later rows.
If you don't have any ordering, then all rows are "equal" and all rows are
included in the computation. That's why your example behaved like it did.
At least that's my understanding of how these things work. I've not used
window functions very much myself.
This is fairly difficult stuff and it probably don't belong in a tutorial
but the current wording suggest that you can add any ordering and it won't
affect the result. That is also a bad since it might teach people the
wrong thing.
/Dennis
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-09-24 03:42:41 | Re: security label support, revised |
Previous Message | Itagaki Takahiro | 2010-09-24 03:26:06 | Re: patch: SQL/MED(FDW) DDL |