webForumDet fria alternativet

Loopa ut trädstruktur

4 svar · 291 visningar · startad av learn

learnMedlem sedan jan. 20051 130 inlägg
#1

Det står helt stilla i huvudet...

Jag har en tabell som ser ut så här:

Table
------
tbl_id
tillhor
namn

"tbl_id" är unikt för varje post. "tillhor" innehåller ett id till den post som posten tillhör, tillhör posten ingen så innehåller attributet "-". Nu vill jag loopa ut aktuell posts "namn" (låt oss säga att det är en katalog-struktur) och dess tillhörande posts "namn", och dess tillhörande... osv. Den slutar så fort "tillhor"="-".

En enkel liten loopen som sagt jag har tänksvårigheter idag... :)

Tack

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Om du vill hantera ett godtyckligt djup så går det inte direkt med SQL (i de flesta DBMS).

Du får lösa det rekursivt i din applikation, för varje tillhor <> '-' så ställer du frågan igen med tbl_id = <tillhor från föregående post>

learnMedlem sedan jan. 20051 130 inlägg
#3

Hmm, kan du visa hur? :OO

:)

learnMedlem sedan jan. 20051 130 inlägg
#4

Jag vet nog allt att du vill hjälpa mig LarsG... ;)

Please

emissionMedlem sedan dec. 19996 721 inlägg
#5

Principen:

Gör en funktion som först hämtar ut namnet och tillhor för ett specifikt id. Om tillhor="-" så returnerar du namnet, annars returnerar du funktionen(tillhor) & "/" & namnet. Du anropar alltså funktionen från funktionen (det är det som kallas rekursion).

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)