Full Join returns all records when there is a match in one of the tables. Fills with NULLs where there is no match.
SELECT Customers.name, Orders.order_amount
FROM Customers
FULL OUTER JOIN Orders
ON Customers.customer_id = Orders.customer_id;
Result:
| name | order_amount |
|---|---|
| Alice | 250 |
| Alice | 125 |
| Bob | 300 |
| Charlie | NULL |
| NULL | 400 |
Includes everything from both sides, even unmatched records.
