Dusan Kolesar wrote:
>
>
> Hello,
>
> This is more SQL problem then SAP DB problem but may bee
> somebody can help
> me.
> Or sombody knows links where solved this problem.
>
> I have a table ADDRESS. Data represent tree structure.
> PARENT_ID points into record of the same table.
>
> CREATE TABLE "ADDRESS"
> (
> "ID" Integer NOT NULL DEFAULT SERIAL (1),
> "PARENT_ID" Integer DEFAULT -1,
> "NAME" Varchar (30) ASCII DEFAULT '',
> )
>
> I want to select all records and sort result preorder or postorder.
>
> I'am sorry for my question in this list, but I feel helpless.
> Thanks for all sugestions.
>
This may help in case not too many levels have to be handled:
DECLARE C CURSOR FOR
WITH RECURSIVE PX (PARENT_ID, ID, NAME, FOLGE) AS
(SELECT PARENT_ID,ID,NAME,CHR(ID) FROM ADDRESS WHERE ID = :parent
UNION ALL
SELECT ADDRESS.PARENT_ID,ADDRESS.ID,ADDRESS.NAME,
FOLGE || lfill (CHR(ADDRESS.ID), ' ', 10)
FROM ADDRESS, PX
WHERE PX.id = ADDRESS.PARENT_ID
)
SELECT PARENT_ID,ID,NAME, folge
FROM PX
ORDER BY FOLGE
Elke
SAP Labs Berlin
> Dusan
>
> -=x=-
> Skontrolované antivírovým programom NOD32
>
>
> --
> MaxDB Discussion Mailing List
> For list archives: http://lists.mysql.com/maxdb
> To unsubscribe:
> http://lists.mysql.com/[EMAIL PROTECTED]
>
--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]