Hallo zusammen,
ich möchte in einer MySQL-DB eine Hierarchie ablegen und auch wieder auslesen können.
Mit der Ablage hätte ich keine Problem, dies würde ich in folgender Form lösen:
Als "Pfad" ergibt sich dann "Ebene1 > Ebene2 > Ebene3". Dieser soll auch so angezeigt werden.
Jetzt soll es aber auch möglich sein, von jeder Ebene des Pfads ausgehend, den Gesamtpfad zu ermitteln und anzuzeigen (wobei die Länge nicht unbedingt auf 3 Elemente beschränkt sein muss, kann mehr oder weniger haben).
Zum Beispiel ist "Ebene2" ein Suchbegriff, dann soll als Ergebnis der gesamte Pfad ("Ebene1 > Ebene2 > Ebene3") angezeigt werden.
Jetzt gibt es in der DB natürlich mehrere solcher Pfade und es kann möglich sein, dass die selbe Bezeichnung einer Ebene mehrfach vorkommt.
Wird jetzt nach einer Ebenen-Bezeichnung gesucht, sollen als Ergebnis dann alle kompletten Pfade ausgegeben werden, in denen diese Ebenen-Bezeichnung vorkommt.
Edit:
Man könnte natürlich hingehen und den kompletten Pfad mit Ablegen:
Und das dann über ein SELECT mit WHERE IN machen.
Grüße
Igotcha
ich möchte in einer MySQL-DB eine Hierarchie ablegen und auch wieder auslesen können.
Mit der Ablage hätte ich keine Problem, dies würde ich in folgender Form lösen:
Code:
ID|NAME_DER_EBENE|PARENTID 1 |Ebene1 |0 2 |Ebene2 |1 3 |Ebene3 |2
Jetzt soll es aber auch möglich sein, von jeder Ebene des Pfads ausgehend, den Gesamtpfad zu ermitteln und anzuzeigen (wobei die Länge nicht unbedingt auf 3 Elemente beschränkt sein muss, kann mehr oder weniger haben).
Zum Beispiel ist "Ebene2" ein Suchbegriff, dann soll als Ergebnis der gesamte Pfad ("Ebene1 > Ebene2 > Ebene3") angezeigt werden.
Jetzt gibt es in der DB natürlich mehrere solcher Pfade und es kann möglich sein, dass die selbe Bezeichnung einer Ebene mehrfach vorkommt.
Wird jetzt nach einer Ebenen-Bezeichnung gesucht, sollen als Ergebnis dann alle kompletten Pfade ausgegeben werden, in denen diese Ebenen-Bezeichnung vorkommt.
Edit:
Man könnte natürlich hingehen und den kompletten Pfad mit Ablegen:
Code:
ID|NAME_DER_EBENE|PARENTID|PFAD 1 |Ebene1 |0 | 2 |Ebene2 |1 |1 3 |Ebene3 |2 |1,2
Grüße
Igotcha
Kommentar