Cześć potrzebuję pomocy przy poprawnym złożeniu zapytania mysql. Przysiągłbym, że działało a potem ni z tego ni z owego przestało.

Może na początek podam tabele:

podzespoly

Field Type Null Key Default Extra
idPodzespolu int(11) NO PRI NULL auto_increment
numerseryjny int(11) YES NULL
nazwa varchar(50) YES NULL
modelauta int(11) YES MUL NULL
kategorie int(11) YES MUL NULL
jednostka int(11) YES MUL NULL
cena int(11) YES NULL

kategorie

Field Type Null Key Default Extra
idnadkategorii int(5) YES NULL
nazwakategorii varchar(50) YES NULL
idKategorii int(3) NO PRI 0

modeleaut

Field Type Null Key Default Extra
id int(11) NO PRI NULL auto_increment
nazwaModelu varchar(50) YES NULL

A o to zapytanie:

 SELECT * 
/*numerseryjny, nazwa*/
FROM podzespoly
LEFT JOIN modeleaut ON podzespoly.modelauta = modeleaut.id
LEFT JOIN kategorie AS k1 ON podzespoly.kategorie = k1.idKategorii
LEFT JOIN kategorie AS k2 ON k1.idnadkategorii = k2.idKategorii

Tabelę kategorie chce połączyć z samą sobą tak, abym dostał kolumnę z nazwą nadkategorii, bo pierwsz 18 rekordów to kategorie główne z id=0, a później będę mógł sobie zagnieżdżać w ten sposób.

Problem w tym, że mysql nie dołącza ostatniej tabeli, czyli zachowuje się tak jakby tego ostatniego JOINa tam nie było.

Proszę o pomoc