Re: How to generate the order if you know the next item for each item?

From: Rockdale Green <rockdale(dot)green(at)gmail(dot)com>
To: Tony Shelver <tshelver(at)gmail(dot)com>
Cc: pgsql-sql <pgsql-sql(at)lists(dot)postgresql(dot)org>
Subject: Re: How to generate the order if you know the next item for each item?
Date: 2021-08-05 16:55:32
Message-ID: CAArxxWh0=hFNLGQ-BODXjqhFu2vJdg0+haKAEbqq6ph-H4A5Og@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Thanks, I do not need functions at this time but will keep that in mind in
the future.

On Thu, Aug 5, 2021 at 10:33 AM Tony Shelver <tshelver(at)gmail(dot)com> wrote:

> We have some ordered processing that we need to do that can involve
> reading through 10s of thousands of records, with a lot of conditional
> processing. We use functions almost exclusively for this, returning a
> table of results.
>
>
> On Tue, 3 Aug 2021 at 18:22, David G. Johnston <david(dot)g(dot)johnston(at)gmail(dot)com>
> wrote:
>
>> On Tue, Aug 3, 2021 at 8:40 AM Rockdale Green <rockdale(dot)green(at)gmail(dot)com>
>> wrote:
>>
>>> can I do it in one query?
>>>
>>
>> Yes.
>>
>>> It might be just very simple and I have tried but somehow I am blocked.
>>>
>>>
>> The feature you need is a recursive CTE (WITH RECURSIVE clause). It
>> requires an initial row (which in this case is task 3, the only task that
>> doesn't appear as a task_order value) and a query to retrieve the next
>> row(s) using the information available in the previous iteration.
>>
>> The documentation and/or online resources can walk you through the
>> specifics.
>>
>> David J.
>>
>

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message intmail01@gmail.com 2021-08-09 12:57:01 Hide some tables
Previous Message Rockdale Green 2021-08-05 16:53:25 Re: How to generate the order if you know the next item for each item?