Setzt sich mit sich selbst an den Tisch , mit dem parent
Spalte, um auf die cat_id des Elternteils zu verlinken.
SELECT c1.cat_id as childID, c1.cat_name ChildName, c2.cat_name as ParentName
from category c1
LEFT OUTER JOIN category c2
ON c1.parent = c2.cat_id
- Achtung:Da einige Elemente keine Eltern haben (
NULL
), füge ich einenLEFT OUTER JOIN
ein also werden diese Zeilen auch angezeigt. Wenn Sie das nicht möchten, verwenden Sie einenJOIN
stattLEFT OUTER JOIN
. - Sie können die Zeilen auch anzeigen, aber statt
NULL
etwas anderes anzeigen (leer oder einen Text oder ...). durch Verwendung vonCOALESCE
. - Sie können das Ergebnis als eine (große) neue Tabelle betrachten, sodass Sie wie gewohnt WHERE-Klauseln hinzufügen können, zum Beispiel nach dem übergeordneten Namen filtern:
WHERE c2.cat_name = 'test2'