SQL Join Visualizer

See every join type, live

Pick a join type and watch three things update together: the Venn diagram, the SQL statement, and the actual result table computed from the sample data below. Edit any cell in the sample tables and the result recomputes instantly. Nothing leaves this page.

Sample tables (click any cell to edit)

users (left table)

idnameremove

orders (right table)

iduser_iditemremove
The sample data includes a user with no orders (Carol) and an order whose user_id matches no user (user_id 9). That is exactly where the join types differ.
Join type

Diagram
Venn diagram of the selected join type users orders
SQL

Result (computed live from the sample data)
users.idusers.name orders.idorders.user_idorders.item
matched on the join key
user with no order (NULLs on the right)
order with no user (NULLs on the left)