Afficher un arbre

Afficher un arbre - SQL/NoSQL - Programmation

Marsh Posté le 28-10-2007 à 17:55:12    

Bonjour !!
 
Je suis débutant en SQL & j'ai choisit pour l'instant MySQL car très populaire avec PHP. J'ai un problème car je ne trouve pas comment écrire ma commande SQL (si c'est possible, mais je pense que oui!), pour afficher directement un arbre.
 
Je m'explique :
 
mon arbre de test se représente comme celà :
PC
_ A:
_ C:
_ _ DOCUMENTS
_ _ WINDOWS
_ D:
_ _ SETUP
(oui, comme un navigateur de fichiers!)
 
J'ai une table "noeuds" qui contient donc celà :
 
id pere label
1 0 PC
2 1 A:
3 1 C:
4 1 D:
5 3 DOCUMENTS
6 3 WINDOWS
7 4 SETUP
 
et je souhaiterai afficher les résultats dans cet ordre là :
id pere label
1 0 PC
2 1 A:
3 1 C:
5 3 DOCUMENTS
6 3 WINDOWS
4 1 D:
7 4 SETUP
 
Evidemment, PHP pourrait réorganiser les éléments avec un petit script mais je pense que le temps d'exécution serait moindre si MySQL pouvait le faire lui-même.
Je ne sais pas comment faire hélas... Est-ce que qqn a la solution ?
 
i3e

Reply

Marsh Posté le 28-10-2007 à 17:55:12   

Reply

Marsh Posté le 28-10-2007 à 19:10:32    

faut trouvé trouvé l'équivalent à CONNECT BY PRIOR d'oracle.  
mais je ne peux t'aider pour MySql ;-)

Reply

Marsh Posté le 28-10-2007 à 19:20:26    

Ca me donne une direction de recherche c'est sympa ;)
Merci bcp !
 
i3e

Reply

Marsh Posté le 29-10-2007 à 02:05:16    

i3e a écrit :

Ca me donne une direction de recherche c'est sympa ;)
Merci bcp !
 
i3e


au pire, tu charge le bazar en mémoire et tu parcours via PHP en récursif sur le parent


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 30-10-2007 à 22:36:14    

effectivement j'y avais bien pensé, c'était justement pour éviter celà que je demandais s'il était possible d'écrire une requette pour demander cette opération au sgbd ^^
comme ça n'existe pas ==> php ! :)
 
i3e

Reply

Marsh Posté le 31-10-2007 à 21:17:41    

+1 ça se fait facilement avec un connect by prior sur une base Oracle. A partir de la 9i il me semble, ou peut être même en 8 d'ailleurs.

Reply

Marsh Posté le 01-11-2007 à 10:16:40    

http://dev.mysql.com/doc/refman/5. [...] uture.html
 
en gros, pas encore dans les versions actuelles dans MySQL. Mais c'est prévu ;-)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed