Bonjour,

Je cherche à tester plusieurs types d'arborescence pour insérer une hiérarchie dans une base. Je suis actuellement en train de travailler sur l'arbre avec énumération de chemin et une requête me pose problème.

Voici à quoi ressemble ma table FAMILLE :

INT | VARCHAR | VARCHAR
FAM_ID | PATH | FAM_LIB
0 | -1 | Transport
1 | 0 | Terrestre
2 | 0,1 | Moto
...

Je cherche a renvoyer tous les pères d'un nœud ou d'une feuille grâce à cette requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT * FROM `FAMILLE` WHERE FAM_ID IN
			   (SELECT PATH FROM FAMILLE
                                        WHERE FAM_LIB = 'Moto')
Mais au lieu de me rendre les deux parents, il me donne seulement la racine c'est à dire le premier qu'il voit...
Si on donne a la place du deuxième SELECT 0,1 il rend bien les deux éléments.

Voilà. Peut être que c'est un problème lors de la conversion des types.