Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 29.03.2016, 20:53
nordi0 nordi0 ist offline
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.03.2016
Beiträge: 2
nordi0 befindet sich auf einem aufstrebenden Ast
Frage mySQL 3-stufige Hierarchie

Ich habe eine Tabelle

Pflanze_A
Pflanze_B
Beziehungsart

Darauf habe ich eine View aller Beziehungen mit Beziehungsart 'hat Art' (gibt etliche andere). Die Tabelle selbst gibt mir maximal 2 Ebenen pro Zeile bekannt. (Hinweis: Viele Pflanzen scheinen ohne Beziehungsart auf, manche haben 3 Ebenen.) Ich joine diese View daher zu sich selbst:

SELECT p1.Pflanze_A, p1.Pflanze_B, p2.Pflanze_B FROM `PPhatArt`
LEFT JOIN `PPhatArt` p2 ON p1.Pflanze_B = p2.Pflanze_A

Hat den einzigen Nachteil, dass bei 3-stufiger Ebene die letzten beiden Ebenen nochmals aufscheinen:

KOHL - KOPFKOHL - ROTKOHL
...
KOPFKOHL - ROTKOHL - NULL

Durch entsprechende Sortierung kann ich zuerst die 3-stufigen Beziehungen bekommen, dann die 2-stufigen. dies liesse sich somit in PHP entsprechend abfangen.

Gibt es eine SQL-Abfrage, welche keine mehrfachen (Teil-)Hierarchien bringt?
Mit Zitat antworten
Sponsored Links