Re: Hierarchical queries - Mailing list pgsql-general

From Anton.Nikiforov@loteco.ru
Subject Re: Hierarchical queries
Date
Msg-id 779905263.20040110200248@loteco.ru
Whole thread Raw
In response to Re: Hierarchical queries  (Oleg Bartunov <oleg@sai.msu.su>)
List pgsql-general
Hello Oleg!
There is no data yet, i'm just planning to start a new project :)
Text labels are just fine and i red the documentation from the top to
the very end a few times and found the way to use your module, but
using it will not as beautiful as i was planning mathematicaly.
You know i have (planning to have) a tree like:
>> >> id        parent   data
>> >> int4      int4     varchar(255)
>> >> 0         0        root
>> >> 1         0        root's chield 1
>> >> 2         0        root's chield 2
>> >> 3         1        root's chield 1 chield 1
>> >> 4         1        root's chield 1 chield 2
>> >> 5         2        root's chield 2 chield 1
>> >> 6         2        root's chield 2 chield 2
And to find a way from the record with id #6 to the record with id #3
WITH YOUR MODULE:
I have to find Lowest Common Ancestor (lca)
Then to find a path from id #6 to lca
Then to find a path from lca to id#3
Then combine this pathes (remember that i need all steps from id #6 to
id #3)
And then run a special code to update all needed data (create records
in different tables)

IN MY BRAINS:
I just need to have function that will rotate a tree and make id #6
the root element and then select a path from root (id#6) to desired id
#3. As i think somebody did this already. And i'm not the first who is
trying to find out the code.

If i'm too stupid to understand the ability of your module - just give
me a direction (i did installed your module and currently playing with
it, so maybe my stupidity will become wiser and wiser in the nearest
feature) :))))

Best regards,
Anton
OB> On Sat, 10 Jan 2004 Anton.Nikiforov@loteco.ru wrote:

>> Hello Oleg and thanks for the link, but i could not understand how to
>> get path from one point of the tree to another?

OB> have you read documentation ? Get all childrens - ltree <@ ltree,
OB> for example:

OB> ltreetest=# select path from test where path <@ 'Top.Science';
OB>                 path
OB> ------------------------------------
OB>  Top.Science
OB>  Top.Science.Astronomy
OB>  Top.Science.Astronomy.Astrophysics
OB>  Top.Science.Astronomy.Cosmology
OB> (4 rows)

OB> You should provide us example of your data and query, so we could help you.

>> Anyway thanks :)
>>
>> Best regards,
>> Anton
>> OB> Look at contrib/ltree
>> OB> http://www.sai.msu.su/~megera/postgres/gist/ltree
>>
>> OB>         Oleg
>> OB> On Fri, 9 Jan 2004 Anton.Nikiforov@loteco.ru wrote:
>>
>> >> Hello everybody!
>> >>
>> >> Does someone know how to build hierarchical queries to the postgresql?
>> >>
>> >> I have a table with tree in it (id, parent)
>> >> and need to find a way from any point of the tree to any other point.
>> >> And i would like to have a list of all steps from point A to point B
>> >> to make some changes on each step (this is required by the algorythm).
>> >>
>> >> Here is an example:
>> >> treetable (where tree is stored):
>> >> id        parent   data
>> >> int4      int4     varchar(255)
>> >> 0         0        root
>> >> 1         0        root's chield 1
>> >> 2         0        root's chield 2
>> >> 3         1        root's chield 1 chield 1
>> >> 4         1        root's chield 1 chield 2
>> >> 5         2        root's chield 2 chield 1
>> >> 6         2        root's chield 2 chield 2
>> >>
>> >> And i want to get something like this:
>> >> start point "root's chield 2 chield 2"
>> >> finish "root's chield 1 chield 1"
>> >>
>> >> And the result i need:
>> >> id        parent   data
>> >> 6         2        root's chield 2 chield 2
>> >> 2         0        root's chield 2
>> >> 0         0        root
>> >> 1         0        root's chield 1
>> >> 4         1        root's chield 1 chield 2
>> >>
>> >> i know that it is possible in Oracle but what about postgres?
>> >>
>> >> Best regards,
>> >> Anton Nikiforov
>> >>
>> >>
>> >> ---------------------------(end of broadcast)---------------------------
>> >> TIP 7: don't forget to increase your free space map settings
>> >>
>>
>> OB>         Regards,
>> OB>                 Oleg
>> OB> _____________________________________________________________
>> OB> Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
>> OB> Sternberg Astronomical Institute, Moscow University (Russia)
>> OB> Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
>> OB> phone: +007(095)939-16-83, +007(095)939-23-83
>>
>> OB> ---------------------------(end of broadcast)---------------------------
>> OB> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>>
>>
>> ---------------------------(end of broadcast)---------------------------
>> TIP 4: Don't 'kill -9' the postmaster
>>

OB>         Regards,
OB>                 Oleg
OB> _____________________________________________________________
OB> Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
OB> Sternberg Astronomical Institute, Moscow University (Russia)
OB> Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
OB> phone: +007(095)939-16-83, +007(095)939-23-83


С уважением,
IT Директор ООО "Лотэко"
Антон Никифоров
Тел.: +7 095 7814200
Факс: +7 095 7814201
Mail: Anton.Nikiforov@loteco.ru
Web: www.loteco.ru


pgsql-general by date:

Previous
From: Oleg Bartunov
Date:
Subject: Re: Hierarchical queries
Next
From: Joe Conway
Date:
Subject: Re: Hierarchical queries