Mam dwie tabele:
pierwsza: towary
- towar_id (PK)
- kat_id (FK) - ID kategorii do której należy towar
druga: kategorie
- kat_id (PK)
- kat_nadrz (ID kategorii nadrzędnej, jeśli ma wartość "0" => jest to kategoria główna)
- kat_poziom (poziom w hierarchii kategorii na któym się ona znajduje)
Przykład:
Załóżmy, że mam 3 kategorie, pierwsza główna i dwie podrzędne należące do tej pierwszej. Tabela będzie miała wówczas następującą zawartość:
1;0;1
2;1;2
3;1;2
Pytanie:
1. W jaki sposób sformułować zapytanie do bazy MySQL aby pytająć o towary należące do kategorii o ID=1 w wynikach znalazły się również towary należące do jej podkategorii (tu: do kategorii o ID=2 i 3)?
2. Jeśli pytanie nr1 nie dokońca jest możlwe do realizacji to w jaki sposób mogę chociaż zliczyć ile towarów należy do danej kategorii razem z jej wszystkimi podkategorami?
Jeśli ma ktoś pomysł na rozwiązanie to z góry dziękuję za podzielenie się...
(wersja MySQL: 3.x więc podazpytania odpadają, chyba, że nie mam innej możliwości obejścia tego problemu to wezmę do uwagę zmianę na 4.1)