Il existe plusieurs façons de stocker des données hiérarchiques dans MySQL. Découvrez la présentation de Bill Karwin qui illustre quatre options.
- Liste de contiguïté
- Énumération des chemins
- Ensembles imbriqués
- Tableau de fermeture
Vous utilisez la liste de contiguïté modèle de stockage des données hiérarchiques, mais malheureusement c'est le plus difficile modèle que vous pouvez choisir pour interroger les sous-arborescences.
Vos options sont :
- Passer à un autre modèle.
- Limiter les requêtes à n niveaux de profondeur.
- Utilisez une procédure stockée pour interroger de manière récursive. Pour plus d'informations à ce sujet, consultez la série d'articles de Quassnoi - Requêtes hiérarchiques dans MySQL .