JOIN

Combines rows from two or more tables. PostgreSQL supports INNER, LEFT, RIGHT, FULL, CROSS, and LATERAL joins.

Syntax

postgresql
SELECT * FROM t1 JOIN t2 ON t1.id = t2.fk_id;

Example

postgresql
-- LEFT JOIN keeps all left rows:
SELECT u.name, p.title
FROM users u
LEFT JOIN posts p ON p.author_id = u.id;

-- Multiple joins:
SELECT o.id, u.name, p.title
FROM orders o
JOIN users u ON u.id = o.user_id
JOIN products p ON p.id = o.product_id;