From: | Rob Sargent <robjsargent(at)gmail(dot)com> |
---|---|
To: | "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com> |
Cc: | "pgsql-generallists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org> |
Subject: | Re: nextval per counted |
Date: | 2023-01-27 21:25:32 |
Message-ID: | 68161326-65af-ee8b-0c9e-be5d8f0b4f7b@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 1/27/23 14:20, David G. Johnston wrote:
> On Fri, Jan 27, 2023 at 1:59 PM Rob Sargent <robjsargent(at)gmail(dot)com> wrote:
>
> I'm trying to craft SQL to invoke a sequence nextval once per
> grouped value.
>
>
> This seems like a very unusual usage of nextval/sequences...
>
> with cleanup as (
> select DISTINCT e.ma <http://e.ma>, coalesce(e.pa <http://e.pa>,
> 'fix') as pa from ...
> ), compute as (
> select ma, pa, nextval(...) from cleanup
> )
> select * from compute ... -- do whatever else you want
>
> So far I have this:
>
> with husb as(
> select e.ma <http://e.ma>, count(distinct coalesce(e.pa
> <http://e.pa>, nextval('egogen')::text)) as mates
> from emp_all_by3 e group by e.ma <http://e.ma> order by mates
> )
> select mates, count(*)
> from husb
> group by mates order by mates desc;
>
> Your "order by mates" in the CTE is totally pointless and wasting
> resources.
>
> David J.
>
Yeah, it wasn't when that was the last bit executed...
Seems asking a sequence for an id isn't too unusual? Or are they
specifically intended for primary keys?
From | Date | Subject | |
---|---|---|---|
Next Message | Rumpi Gravenstein | 2023-01-27 21:30:34 | Re: Indexes mysteriously change to ON ONLY |
Previous Message | David G. Johnston | 2023-01-27 21:20:55 | Re: nextval per counted |