SQL LEFT JOIN
SQL LEFT JOIN Statement
The SQL LEFT JOIN statement is used to return all records from the left table and the matched records from the right table. If there is no match, the result is NULL from the right table.
Syntax
SELECT column1, column2, ...
FROM table1
LEFT JOIN table2
ON table1.column = table2.column;
The LEFT JOIN statement has the following components:
column1, column2, ...: The columns to be retrieved.table1: The name of the first table (left table).table2: The name of the second table (right table).table1.column = table2.column: The condition to join the tables.
Example SQL LEFT JOIN Statement Queries
Let's look at some examples of SQL LEFT JOIN statement queries:
1. Basic LEFT JOIN Example
SELECT employees_1.id, employees_1.first_name, employees_2.department_name
FROM employees_1
LEFT JOIN employees_2
ON employees_1.id = employees_2.id;
This query retrieves the id and first_name columns from the employees_1 table and the department_name column from the employees_2 table. It returns all records from the employees_1 table and the matched records from the employees_2 table. If there is no match, the result is NULL from the employees_2 table.
2. LEFT JOIN with WHERE Clause
SELECT employees_1.id, employees_1.first_name, employees_2.department_name
FROM employees_1
LEFT JOIN employees_2
ON employees_1.id = employees_2.id
WHERE employees_2.department_name IS NOT NULL;
This query retrieves the id and first_name columns from the employees_1 table and the department_name column from the employees_2 table. It returns all records from the employees_1 table and the matched records from the employees_2 table where the department_name is not null.
Full Example
Let's go through a complete example that includes creating tables, inserting data, and querying the tables with the LEFT JOIN statement.
Step 1: Creating Tables
This step involves creating new tables named employees_1 and employees_2 to store employee data.
CREATE TABLE employees_1 (
id INT PRIMARY KEY,
first_name VARCHAR(50)
);
CREATE TABLE employees_2 (
id INT PRIMARY KEY,
department_name VARCHAR(50)
);
In this example, we create two tables: employees_1 with columns for id and first_name, and employees_2 with columns for id and department_name.
Step 2: Inserting Data into the Tables
This step involves inserting some sample data into the employees_1 and employees_2 tables.
INSERT INTO employees_1 (id, first_name)
VALUES (1, 'John'), (2, 'Jane'), (3, 'Jim');
INSERT INTO employees_2 (id, department_name)
VALUES (1, 'Engineering'), (2, 'HR'), (4, 'Marketing');
Here, we insert data into the employees_1 and employees_2 tables.
Step 3: Querying the Tables with LEFT JOIN
This step involves selecting the data from the employees_1 and employees_2 tables and joining them using the LEFT JOIN statement.
SELECT employees_1.id, employees_1.first_name, employees_2.department_name
FROM employees_1
LEFT JOIN employees_2
ON employees_1.id = employees_2.id;
This query retrieves all the rows from the employees_1 table and the matched rows from the employees_2 table. The result will be:
id first_name department_name
--- ----------- ---------------
1 John Engineering
2 Jane HR
3 Jim NULL
Conclusion
The SQL LEFT JOIN statement is a powerful tool for returning all records from the left table and the matched records from the right table. Understanding how to use the LEFT JOIN statement and its syntax is essential for effective data retrieval and analysis in SQL databases.