Maison > Article > base de données > Implémentation du code de la classification infinie dans MySQL
Le contenu de cet article concerne l'implémentation du code de la classification Infinitus dans MySQL. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Je l'ai également trouvé ailleurs. Après l'avoir analysé, je l'ai trouvé plutôt bon, j'aimerais donc le partager ici.
Impossible de publier la photo, le problème ne peut être résolu que simplement : Actualités 0-1
3 0-1-2 🎜>Une déclaration pour y parvenir :
SELECT id,name,pid,path,concat(path,'-',id) AS newpath FROM cates ORDER BY newpath
Résultat après requête :
id Actualités Actualités chinoises 1 0-1 0-1-2
4 Pékin Nouvelles 2 0-1- 2 5
On constate que la structure est très claire. Il utilise très intelligemment la fonction de tri de MySQL. Il utilise la fonction concat() pour connecter le chemin actuel avec l'identifiant actuel (je veux vraiment concaténer les chaînes. Il donne un alias newpath et trie newpath. Par coïncidence, il compare 0 en premier). lors du tri., Comparaison 1, Comparaison 2, Comparaison 3... De cette façon, les résultats de la requête sont directement triés par niveau. Ensuite, il vous suffit de boucler la sortie au premier plan, et l'"espace réservé de relation hiérarchique" peut également être. résolu.0-1-2-4 de newpath est équivalent à l'espace réservé Infinitus. Lors de la sortie de PHP, vous devez utiliser l'instruction ci-dessus pour l'interroger. La valeur du champ newpath de chaque élément de données est traitée en arrière-plan. est d'abord divisé en tableaux, puis en statistiques. Pour ce tableau, ajoutez un nombre de clés (un ensemble de données) au tableau et placez le nombre compté de tableaux dans cette clé.
thinkphp 5.0 par exemple :
Ce décompte est l'espace réservé pour la classification hiérarchique, puis bouclez-le dans le modèle et faites-le écho autant de fois que vous bouclez
Effet :
Actualités
Actualités chinoises
🎜 >
Comment utiliser la récursivité pour obtenir une notation infinie dans le cadre TP5 (exemple de code)<.>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!