Bonjour à tous,

J'ai un petit soucis pour faire les jointures entre mes tables sql.

Ma base sql se compose de 4 tables :
-region (id, id_region, nom_region)
-zone (id, id_zone, nom_zone)
-secteur(id, id_secteur, nom_secteur)
-batiment(id, id_batiment, nom_batiment

Pour exemple, j'ai rempli mes tables.

Region -> id = 1, id_region = 1, nom_region = idf
Zone -> id = 1, id_zone = 1, nom_zone = zone 1
Secteur -> id = 1, id_secteur = 1, nom_secteur = secteur 1
Batiment -> id = 1, id_batiment = 1, nom_batiment = bat 1

Je voudrais créer une relation entre :
- l'id_région 1 et l'id_zone 1
- l'id_zone 1 et l'id_secteur 1
- l'id_secteur 1 et l'id batiment 1

Ma requête se compose alors ainsi :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT R.nom_region, Z.nom_zone, S.nom_secteur,B.nom_batiment
FROM region R
INNER JOIN zone Z ON R.id = Z.id_region
INNER JOIN secteur S ON Z.id = S.id_zone
INNER JOIN batiment B ON S.id = B.id_secteur
Lorsque j'essaye de la rentrer, j'ai un message d'erreur qui m'annonce :

#1054 Champ 'Z.id_region" inconnu dans ON clause.
Pourtant le champ id_region existe bien dans ma table "region". Ai-je fais une erreur quelque part en créant la table?

Merci.