Mysql
 sql >> Base de données >  >> RDS >> Mysql

Mysql, problème possible de catégorie imbriquée

Si par cela vous avez beaucoup de niveaux arbitraires d'imbrication de catégories, vous ne pouvez pas tous les saisir avec une seule requête en utilisant le modèle de schéma "référence parent". Vous devrez interroger à plusieurs reprises les enfants de chaque catégorie que vous avez trouvée, de manière récursive, ou simplement continuer à faire des auto-jointures de plus en plus longues jusqu'à ce que vous ayez récupéré les éléments les plus profondément imbriqués.

Pour un accès à requête unique aux données hiérarchiques, vous devrez rechercher d'autres manières de structurer le schéma, principalement :

  • Ensembles imbriqués :stocke un ordre numérique d'une marche récursive sur l'arbre
  • Relation d'adjacence  :ajoute des paires supplémentaires d'ancêtre/descendant à votre recherche d'enfant/parent

L'une ou l'autre ou les deux de ces approches, dans l'une de leurs saveurs, peuvent fonctionner pour vous. (Je me retrouve généralement avec des ensembles imbriqués afin d'obtenir également une commande explicite du premier au dernier.)