Genau Hubert 

sowas habe ich gesucht, 
Das mit der Sotieruns stimmt da habe ich eine weitere spalte dafuer 
wollte das ganze nicht zu kompliziert machen ;-).

Vielen Dank.

Gruss

Roman Pittroff
Consulting
Bangkok, Thailand




>-----Original Message-----
>From: Joachim van de Bruck [mailto:[EMAIL PROTECTED]] 
>Sent: Thursday, May 30, 2002 7:27 PM
>To: ASP Datenbankprogrammierung
>Subject: [aspdedatabase] AW: SQL Report Drilldown
>
>
>Hallo!
>
>> Ich habe einen Table mit folgender Strukur
>>
>> [project_id],[parent_project_id]
>>
>> Dieses erlaubt einen tree zu gestalten.
>>
>> Nun wie kann ich am schnellsten per SQL diesen tree
>> ausgeben lassen?
>
>Da gibt es mehrere M�glichkeiten, aber richtig elegant kann 
>man das nur mit SQL Server und Stored Procedures l�sen. Hier 
>aber ein "universelles Beispiel" f�r beliebige Datenbanken mit 
>einem Unterprogramm, das rekursiv aufgerufen wird:
>
><%
>option explicit
>
>call treeMenu(0, 0)
>
>sub treeMenu(byval pParent, byval pLevel)
>   dim rm: set rm = Server.CreateObject("ADODB.Recordset")
>   rm.Open "select * from project where parent_project_id = " 
>& pParent,
>           db, adOpenStatic, adLockReadOnly, adCmdText
>   do while not rm.Eof
>      Response.Write(...)
>      call treeMenu(rm.Fields("project_id").value, pLevel + 1
>      rm.MoveNext
>   loop
>   rm.Close
>end sub
>%>
>
>Anstatt direkt auf die Tabelle zuzugreifen, kann man auch eine 
>View basteln, die noch mehr Informationen zur�ckgibt:
>
>SELECT   *, (SELECT COUNT(*)
>             FROM   project AS B
>             WHERE  b.parent_project_id = a.project_id) AS children
>FROM     project AS A
>WHERE    parent_project_id = [P1]
>ORDER BY project_id
>
>Hier wird zus�tzlich die Anzahl der "Kinder" ausgegeben, so 
>dass man sich manchen DB-Aufruf dann sparen kann.
>
>Wenn die Anzahl der Ebenen begrenzt ist, kann man auch direkt 
>ein hierarchisches Recordset erzeugen lassen.
>
>Ich vermisse bei Dir eine Spalte, in der die Reihenfolge 
>innerhalb einer Ebene festgelegt wird. Sortierst Du einfach 
>nur nach "project_id" oder vielleicht gar nicht?
>
>Freundliche Gr��e
>Joachim van de Bruck
>
>
>
>
>| [aspdedatabase] als [EMAIL PROTECTED] subscribed 
>| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv Sie 
>| k�nnen sich unter folgender URL an- und abmelden: 
>| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp
>


| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp

Antwort per Email an