Hello Elke,
Thank you very much, for your advice.
It is working very nice for me.

Dusan

On Fri, 21 May 2004 09:13:10 +0200, Zabach, Elke <[EMAIL PROTECTED]> wrote:
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]



Reply via email to