JOIN Types

Inner

Outer

Cross

Modifier

Example

SELECT e1.name AS Employee, e2.name AS Manager
FROM employees e1
INNER JOIN employees e2
ON e1.manager_id = e2.id;
id name manager_id
1 Alice NULL
2 Bob 1
3 Charlie 1
4 David 2
5 Eve 2
Employee Manager
Bob Alice
Charlie Alice
David Bob
Eve Bob
SELECT students.name,students.clubNumber,clubs.clubName
FROM students
LEFT JOIN clubs
on student.clubNumber = clubs.clubNumber

SELECT 
    employees.name, 
    departments.department_name
FROM employees
CROSS JOIN departments;

Implicit Join

SELECT *
FROM table1, table2
WHERE table1.id = table2.id;

就是 SQL 里最早期的连接语法,叫 隐式连接 (implicit join)