Pokud vnořené sady nejsou možné, vím o následujícím:
- Pokud jsou data uspořádána tak, že děti rodiče vždy následují svého rodiče, můžete to vyřešit jedním databázovým dotazem na všechna data přeskočením skrytých uzlů ve výstupu.
Funguje to stejně i u seřazené vnořené sady, princip byl popsán v této odpovědi nicméně algoritmy pro získání hloubky nefungují a já bych navrhl rekurzivní iterátor který je schopen odstranit skryté položky.
Také pokud data nejsou seřazena, můžete vytvořit stromovou strukturu z (netříděného) dotazu všech řádků, jak je uvedeno v odpověď na Vnořené pole. Třetí úroveň mizí
. Není potřeba rekurze a získáte strukturu, kterou můžete snadno vytisknout, měl jsem to pokrýt pro <ul>/<li>
výstup ve stylu html také v jiné odpovědi.
- Odpověď na Jak mohu převést řadu vztahů rodič-dítě do hierarchického stromu ?
- Odpověď na Jak získat vnořený seznam HTML ze sady záznamů pole objektu?