[MYSQL] Jointure sur deux tables

Fermé
Xandler - 28 janv. 2009 à 16:57
 Nook - 28 janv. 2009 à 21:23
Bonjour à tous,

Je voudrais solliciter votre aide sur une requête que je n'arrive pas à finaliser.
Voici mes deux tables :

countries(locale, code, name, visible);
exemple : le tuple ('en_US', 'AU', 'australia', 'Y')

et

countries_bordering(country1, country2)
exemple : le tuple ('AU','NZ') qui utilise le pays sous le format du champ code de la table countries.

Je voudrais obtenir les deux champs correspondants à tous les pays frontaliers sous la forme du name.
Par exemple : obtenir le tuple ('France','Italie') qui correspond dans la table countries_bordering au tuple ('FR','IT').
Je pense que la requête ne semble pas bien compliquée mais je n'arrive pas à mettre la main dessus.
Je ne suis pas très bien expérimenté mais il me semble que ça devrait donner un truc du genre :

SELECT ....
FROM countries_boundering
JOIN countries c1 ON ....
JOIN countries c2 ON ...

mais il me manque le reste.
J'espère avoir été clair.
Merci d'avance pour votre aide.
A voir également:

1 réponse

Je dirais ça, mais j'ai pas de quoi vérifier sur ce pc :

select a.name, b.name
from countries a, countries b, countries_bordering c
where a.code = c.country1 and b.code = c.country2

je pense que ça marche mais y'a peut-être plus optimisé
0