Hierarchikus adattárolás - üres ágak szűrése
Sziasztok!
Van egy táblám, amiben hierarchikus adatszerkezettel van letárolva egy menü. A leveleket szűröm bizonyos dolgok alapján, és azt szeretném, ha csak azok az ágak maradnának a kapott tömbben, amiknek vannak levelei a szűrés után is.
A szűrő kód, amit használok konkrétan ilyen:Itt a csomagolás a hierarchikus, és szűröm a csomagolás kiszerelése alapján. A faágakat szándékosan meghagytam ((csomagolasok.jobb-csomagolasok.bal)<>1 OR), mert a megjelenítésnél szükség van rájuk, viszont az üres ágakat valahogy ki szeretném szedni, mert sokkal egyszerűbb lenne úgy az élet a sablonozásnál.
Próbálkoztam php-vel, de nem látom át, hogy milyen logika alapján lehetne kiszedni az üres ágakat. Nem tudom, hogy mysql-ben lehetséges-e (nem látok rá sok esélyt), de mindegy is. A lényeg, hogy kéne egy kis segítség, mert adatbázisokkal még nagyon nem vagyok toppon.
■ Van egy táblám, amiben hierarchikus adatszerkezettel van letárolva egy menü. A leveleket szűröm bizonyos dolgok alapján, és azt szeretném, ha csak azok az ágak maradnának a kapott tömbben, amiknek vannak levelei a szűrés után is.
A szűrő kód, amit használok konkrétan ilyen:
Adatbazis::keres(
'SELECT
csomagolasok.bal, csomagolasok.jobb, csomagolasok.url, csomagolasok.nev
FROM
csomagolasok
WHERE
(csomagolasok.jobb-csomagolasok.bal)<>1 OR
csomagolasok.csomagolas_id IN
(
SELECT
csomagolas_kiszerelesek.csomagolas_id
FROM
csomagolas_kiszerelesek
WHERE
csomagolas_kiszerelesek.kiszereles_id=\'%d\'
)
ORDER BY
csomagolasok.bal ASC',
$kiszereles_id
)
Próbálkoztam php-vel, de nem látom át, hogy milyen logika alapján lehetne kiszedni az üres ágakat. Nem tudom, hogy mysql-ben lehetséges-e (nem látok rá sok esélyt), de mindegy is. A lényeg, hogy kéne egy kis segítség, mert adatbázisokkal még nagyon nem vagyok toppon.
Fordított sorrend
Megoldás php-vel