Re: Reporting by family tree
David G. Johnston <david.g.johnston@gmail.com>
From: "David G. Johnston" <david.g.johnston@gmail.com>
To: o1bigtenor <o1bigtenor@gmail.com>
Cc: Ibrahim Shaame <ishaame@gmail.com>,
swastik Gurung <gurung_swastik@yahoo.com>, "pgsql-novice@lists.postgresql.org" <pgsql-novice@lists.postgresql.org>
Date: 2023-10-25T22:16:54Z
Lists: pgsql-novice
On Wed, Oct 25, 2023 at 9:13 AM o1bigtenor <o1bigtenor@gmail.com> wrote:
> On Wed, Oct 25, 2023 at 9:55 AM David G. Johnston
> <david.g.johnston@gmail.com> wrote:
> >
> > On Wed, Oct 25, 2023 at 5:21 AM Ibrahim Shaame <ishaame@gmail.com>
> wrote:
> >>
> >> But what I want to get is grandfather - father - children:
> >>
> >> 1 - Grandfather1
> >>
> >> 3 - father1-1
> >>
> >> 6 - son1-1
> >>
> >> 7 – son1-2
> >>
> >> 4 - Father1-2
> >>
> >> 8 - son2-1
> >>
> >> 2 – Grandfather2
> >>
> >> 5 - Father2-1
> >>
> >> etc
> >>
> >>
> >> Any suggestion
> >>
> >
> > If you want a different ordering of the output change the ORDER BY
> specification.
> >
> > Specifically, you want to order by the path of each person. Since that
> can only be determined during the traversal you need to create the path
> data yourself. I suggest using an integer[] (integer array) to store the
> path using ID values as breadcrumbs.
> >
> >
> (Not the OP just someone following the list trying to learn.)
>
> 'using ID values as breadcrumbs' - - - can I interpret that to mean
> the ordinal numbers 1-8 listed (more implied)?
>
>
Yes, the numbers 1-8 are the values assigned to these 8 example individuals
as their unique identifiers.
{1}
{1,3}
{1,3,6}
{1,3,7}
{1,4}
{1,4,8}
{2}
{2,5}
David J.