Inner Join:
ON
.SELECT column_name(s) FROM table1
INNER JOIN table2 ON table1.column1 = table2.column2;
SELECT employee.employee_id, department.department_name
FROM employee
INNER JOIN department ON employee.department_id = department.department_id;
Left Outer Join:
NULL
.SELECT table1.column1, table2.column1
FROM table1
LEFT OUTER JOIN table2 ON table1.common_column = table2.common_column;
Right Outer Join:
SELECT employee.employee_id, department.department_name
FROM employee
RIGHT OUTER JOIN department
ON employee.department_id = department.department_id;
Full Outer Join:
SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;
Natural Join:
SELECT *
FROM employee
NATURAL JOIN department;
LEFT OUTER JOIN
, MySQL uses LEFT JOIN
).Inner Join Example:
SELECT employee.employee_id, department.department_name
FROM employee
INNER JOIN department
ON employee.department_id = department.department_id;
Left Outer Join Example:
SELECT employee.employee_id, department.department_name
FROM employee
LEFT OUTER JOIN department
ON employee.department_id = department.department_id;
Right Outer Join Example:
SELECT employee.employee_id, department.department_name
FROM employee
RIGHT OUTER JOIN department
ON employee.department_id = department.department_id;
Full Outer Join Syntax:
SELECT *
FROM table1
FULL OUTER JOIN table2
ON table1.column = table2.column;
Understanding these joins is fundamental to effectively working with SQL databases, especially when data resides in multiple tables. Practical examples using MySQL will be provided in the following chapter to better illustrate these concepts.