
Natknąłem się na pewien problem, którego nie potrafię rozwiązać, dlatego proszę o pomoc.
Struktura tabel:
Kod
`categories`
-id_category,
-id_parent
-name
-permalink
`adverts`
id_advert
id_category
title
-id_category,
-id_parent
-name
-permalink
`adverts`
id_advert
id_category
title
Chcę wyświetlić wszystkie kategorie i podkategorie razem z ilością ogłoszeń, w taki sposób
Kategoria A (15)
-podkategoria1 (5)
-podkategoria2 (10)
Kategoria B (20)
-podkategoria 3 (1)
-podkategoria 4 (19)
Probowałem realizować to za pomocą prostej funkcji rekurencyjnej, jednak wynik jest średnio zadawalający, w sumie wiem dlaczego, ale nie potrafię tego inaczej rozwiązać. Czy ktoś może pomóc lub po prostu naprowadzić? Będę wdzięczny
Oto moje zapytanie:
SELECT * , ( SELECT COUNT( * ) FROM `adverts` WHERE adverts.id_category = categories.id_category ) AS `ile` FROM `categories` WHERE `id_parent` = '$id_parent';
Owszem dostaję drzewko tylko liczba się nie zgadza, czyli:
Kategoria A (0)
-podkategoria 1 (5)
Pozdrawiam