La clausola LEFT OUTER JOIN
unisce due tabelle in base ad una colonna comune e seleziona i record che hanno valori corrispondenti in queste colonne e nelle righe rimanenti dalla tabella di sinistra. Per esempio:
SELECT customers.customer_id, customers.name, orders.amount FROM customers LEFT OUTER JOIN orders ON (customers.customer_id = orders.customer_id) WHERE orders.amount >= 500;
La clausola RIGHT OUTER JOIN
unisce due tabelle in base ad una colonna comune e seleziona i record che hanno valori corrispondenti in queste colonne e nelle righe rimanenti dalla tabella di destra. Per esempio:
SELECT customers.customer_id, customers.name, orders.amount FROM customers RIGHT OUTER JOIN orders ON (customers.customer_id = orders.customer_id) WHERE orders.amount >= 500;
La clausola FULL OUTER JOIN
unisce due tabelle in base ad una colonna comune e seleziona i record che hanno valori corrispondenti in queste colonne e nelle righe rimanenti da entrambe le tabelle. Per esempio:
SELECT customers.customer_id, customers.name, orders.amount FROM customers FULL OUTER JOIN orders ON (customers.customer_id = orders.customer_id) WHERE orders.amount >= 500;
AS
proprio come nelle INNER JOIN
.