FULL JOIN
4ème type de jointure "FULL JOIN"
La jointure FULL JOIN est également appelée FULL OUTER JOIN.
SELECT *
FROM livre AS T1
FULL JOIN genre AS T2
ON T1.id_genre = T2.id;
astuce
FULL JOIN = LEFT JOIN + INNER JOIN + RIGHT JOIN
remarque
Le FULL JOIN n’est actuellement pas supporté par MariaDB et MySQL.
Pour exécuter une jointure FULL JOIN avec MariaDB ou MySQL,
il suffit de faire une UNION des requêtes LEFT JOIN et RIGHT JOIN :
SELECT * FROM livre AS T1 LEFT JOIN genre AS T2 ON T1.id_genre = T2.id
UNION
SELECT * FROM livre AS T1 RIGHT JOIN genre AS T2 ON T1.id_genre = T2.id;
Dans notre exemple, la jointure FULL JOIN
retournera toutes les correspondances entre un livre et un genre, les livres sans genre et les genres sans livre !
SELECT * FROM livre AS T1 LEFT JOIN genre AS T2 ON T1.id_genre = T2.id
UNION
SELECT * FROM livre AS T1 RIGHT JOIN genre AS T2 ON T1.id_genre = T2.id;