FULL OUTER JOIN

Join

Returns all rows when there is a match in either table. Unmatched rows from both sides get NULL.

Syntax

SELECT cols FROM t1 FULL OUTER JOIN t2 ON condition

Example

SELECT a.name, b.name
FROM table_a a
FULL OUTER JOIN table_b b ON a.id = b.a_id;

About SQL FULL OUTER JOIN

The FULL OUTER JOIN keyword belongs to the Join category of SQL statements. Returns all rows when there is a match in either table. Unmatched rows from both sides get NULL. Understanding this command is essential for any developer working with relational databases like PostgreSQL, MySQL, SQLite, or SQL Server.

SQL (Structured Query Language) is the standard language for managing and querying relational databases. The FULL OUTER JOIN statement is supported across all major database systems, though specific syntax may vary slightly between PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, and SQLite. Always consult your database's documentation for vendor-specific features and limitations.

Best practices for using FULL OUTER JOIN: always test queries on a development database before running them in production, use parameterized queries to prevent SQL injection, and leverage EXPLAIN to understand query performance. For complex queries, consider using CTEs (Common Table Expressions) to improve readability and maintainability.

Related SQL Keywords