Připojte se ke stolu sama se sebou , pomocí parent
sloupec pro propojení s cat_id rodiče.
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
- Buďte opatrní:protože některé prvky nemají rodiče (
NULL
), vložil jsemLEFT OUTER JOIN
takže se zobrazí i tyto řádky. Pokud to nechcete, použijteJOIN
místoLEFT OUTER JOIN
. - Můžete také zobrazit řádky, ale místo
NULL
zobrazte něco jiného (prázdné nebo textové nebo ...) pomocíCOALESCE
. - Výsledek můžete považovat za jednu (velkou) novou tabulku, takže můžete přidat klauzule WHERE jako obvykle, například filtrovat podle názvu rodiče:
WHERE c2.cat_name = 'test2'