En fait on va peut-être gagner un peu de temps parce que je suis presque convaincu que mon idée est justifiée sur ton modèle de données.
Je te suggère donc d'organiser autrement ton modèle en procédant comme ceci :
+----------------+ +-------------------+ +------------------+ +-------------------+
| modules | | chapitres | | briques | | sequences |
+-----------+----+ 0/n 1/1 +--------------+----+ 0/n 1/1 +-------------+----+ 0/n 1/1 +--------------+----+
| idmodule | PK |-----------| idchapitre | PK |-----------| idbrique | PK |-----------| idsequence | PK |
| nommodule | | | idmodule | FK | | idchapitre | FK | | idbrique | FK |
+-----------+----+ | nomchapitre | | | nombrique | | | nomsequence | |
| rankchapitre | | | rankbrique | | | ranksequence | |
+--------------+----+ +-------------+----+ +--------------+----+
À partir de ce modèle que tu ne devrais pas avoir de diffucultés à comprendre, la requête pour mettons le module 1 serait la suivante :
SELECT
m.nommodule,
c.nomchapitre,
b.nombrique,
s.nomsequence
FROM modules m
INNER JOIN chapitre c ON m.idmodule = c.idmodule
INNER JOIN briques b ON c.idchapitre = b.idchapitre
INNER JOIN sequences s ON b.idbrique = s.idbrique
WHERE m.idmodule = 1
ORDER BY
m.idmodule,
c.rankchapitre,
b.rankbrique,
s.ranksequence;
S'il y a un point ou l'autre qui te semble obscur, n'hésite pas à poser des questions :)
______________________________________________________________
Une question bien formulée, c'est un problème bien compris : ça représente déjà les 3/4 de la réponse ;)