[PATCH] distinct aggregates within a window function WIP

From: Eugen Konkov <kes-kes(at)yandex(dot)ru>
To: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: [PATCH] distinct aggregates within a window function WIP
Date: 2020-04-21 15:06:11
Message-ID: 611952721.20200421180611@yandex.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi. I read the thread.

Probably this fiddle will be helpful for testing:

https://dbfiddle.uk/?rdbms=postgres_12&fiddle=abe845142a5099d921d3729043fb8491

I recently encountered a problem:
Why Window-specific functions do not allow DISTINCT to be used within the function argument list?

sum( DISTINCT order_cost ) OVER ( PARTITION BY invoice_id ORDER BY invoice_id, group_id RANGE unbound preceeding and unbound following )

behavior is quite deterministic:

ORDER BY will create peers in partition
DISTINCT will get only one peer

I resolve my problem via two subqueries, but it seems this logic may
be applied to window functions (did not check this for other functions thought)

--
Best regards,
Eugen Konkov

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andreas Karlsson 2020-04-21 15:17:00 Re: [PATCH] distinct aggregates within a window function WIP
Previous Message tushar 2020-04-21 14:34:15 [IBM z Systems] Getting server crash when jit_above_cost =0