[MySQL] Select

SeB -  
 SeB -
Bonjour, j'ai une table avec cette structure :

id
title
node_path
node_level

Il s'agit d'une arborescence.

Actuellement, je fais deux requêtes pour récupérer le tableau des noeuds en fonction d'un id :

TAB = SELECT id, title, node_path FROM table WHERE id = 6

NODES = SELECT id, title FROM table WHERE node_path = TAB[node_path] ORDER BY node_level

Est-il possible de ne faire qu'une seule requête ?

Merci

2 réponses

PhP Messages postés 1774 Statut Membre 606
 
Bjr,

Je ne pense pas ... Peut être avec MySQL 5 qui est censé supporter les requêtes imbriquées et encore ...

De toutes façons les bases de données (hormis les bases de données objets) ne sont pas adapter au stockage des structures arborescentes surtout si celle-ci est complexe : c'est toujours du bricolage.

0
SeB
 
Merci, ça a le mérite d'être clair. J'avais lu que SQL n'était pas adapté pour le récursif mais j'espérais qu'il existe une méthode pour faire une requête sur au moins "un niveau".

J'en profite pour m'auto-corriger :

NODES = SELECT id, title FROM table WHERE id IN(TAB[node_path]) ORDER BY node_level
0