MySQL/InnoDB: Existe-t-il un moyen de faire un select en cascade ?

MySQL/InnoDB: Existe-t-il un moyen de faire un select en cascade ? - SQL/NoSQL - Programmation

Marsh Posté le 24-01-2006 à 18:34:42    

Bonjour à tous,
 
Je suis en train de faire des tests avec une table de ce genre :
 


| id | name | parentId |
|----|------|----------|
|    |      |          |


 
Il y a une contrainte entre parentId et id, si bien que si je supprime une ligne, ses enfants sont supprimées aussi (ON DELETE CASCADE)
 
Donc si j'ai cette table là par exemple :
 


| id | name | parentId |
|----|------|----------|
| 1  |  A   |   NULL   |
| 2  |  B   |    1     |
| 3  |  C   |    2     |
| 4  |  C   |    6     |
| 5  |  C   |    3     |
| 6  |  C   |   NULL   |


 
Si je supprime la ligne ou id = 1, la ligne id = 2, 3 et 5 seront supprimées aussi.
 
Donc jusqu'à là c'est parfait, ça marche très bien et c'est exactement ce dont j'ai besoin.
 
Maintenant ce que je voudrais savoir c'est s'il existe un moyen de suivr ce même principe mais à la selection ?
 
C'est à dire qu'en sélectionnant la ligne ou id=1, est-il possible de récupérer les lignes enfants ? (2, 3 et 5)
 
Merci par avance :)


---------------
Gamertag: CoteBlack YeLL
Reply

Marsh Posté le 24-01-2006 à 18:34:42   

Reply

Marsh Posté le 24-01-2006 à 19:00:24    

en faisant une jointure tout simplement

Reply

Marsh Posté le 24-01-2006 à 19:58:13    

Je ne suis pas très familiarisé avec les jointures.
 
J'ai essayé ça :
 
SELECT parent.id, parent.name FROM parent LEFT JOIN parent AS p2 ON parent.id = p2.parentId WHERE parent.id=1
 
Mais ça ne me retourne que la 1ère ligne :(


---------------
Gamertag: CoteBlack YeLL
Reply

Marsh Posté le 10-04-2006 à 16:01:47    

Dj YeLL a écrit :

Je ne suis pas très familiarisé avec les jointures.
 
J'ai essayé ça :
 
SELECT parent.id, parent.name FROM parent LEFT JOIN parent AS p2 ON parent.id = p2.parentId WHERE parent.id=1
 
Mais ça ne me retourne que la 1ère ligne :(


 
up, ça m'interesserais beaucoup également d'avoir la réponse j'ai exactement le même type de besoin  :bounce:  
 
 
merci
a+

Reply

Sujets relatifs:

Leave a Replay

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