Pourquoi MySQL signaler une erreur de syntaxe sur la JOINTURE EXTERNE COMPLÈTE?
SELECT airline, airports.icao_code, continent, country, province, city, website
FROM airlines
FULL OUTER JOIN airports ON airlines.iaco_code = airports.iaco_code
FULL OUTER JOIN cities ON airports.city_id = cities.city_id
FULL OUTER JOIN provinces ON cities.province_id = provinces.province_id
FULL OUTER JOIN countries ON cities.country_id = countries.country_id
FULL OUTER JOIN continents ON countries.continent_id = continents.continent_id
Il est dit que
Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre versions du serveur MySQL pour la bonne syntaxe à utiliser près de " jointure externe
airports
sur les compagnies aériennes.iaco_code = aéroports.iaco_code
full outer join', à la ligne 4
La syntaxe ressemble le droit de me. Je n'ai jamais fait beaucoup de jointures avant, mais j'ai besoin de ces colonnes dans un tableau qui est recoupé par plusieurs id.
- Il n'y a pas de
FULL OUTER JOIN
syntaxe: dev.mysql.com/doc/refman/5.0/en/join.html
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de
FULL OUTER JOIN
dans MySQL. Voir 7.2.12. Jointure Externe De La Simplification et 12.2.8.1. La Syntaxe de JOINTURE:cletus la réponse n'est pas tout à fait droit.
UNION
va supprimer les enregistrements en double qu'unFULL OUTER JOIN
comprendrait. Si vous avez besoin de les doublons en utilisant quelque chose comme:UNION ALL
mais de vérifier si l'un d'une colonne dans l'un desJOIN
ed tables estNULL
pour vérifier qu'elle ne peut pas être assortie de toutes les lignes dans les autres tables) s'appuie sur les tableaux de réellement avoir au moins unNOT NULL
colonne. Si il n'y a pas de colonne qui est garanti de ne pas en fait, contient unNULL
, cette approche ne fonctionnera pas.foo = NULL
ne reviendra pas VRAI, même sifoo IS NULL
.)Juste à compléter le cas lorsque vous avez besoin de
FULL OUTER JOIN
trois tables t1, t2, t3. Vous pourriez faire de t1, t2, t3, à son tour, gauche rejoint le reste deux tables, puis de l'union.Je viens de faire un tour de ce:
le point est, que la requête de double fait un point fixe, et mysql peut jointure externe les 2 autres tables pour que