Home Python C Language C ++ HTML 5 CSS Javascript Java Kotlin SQL DJango Bootstrap React.js R C# PHP ASP.Net Numpy Dart Pandas Digital Marketing

LEFT JOIN - All Records from the Left Table, and Matched Records from the Right in SQL


The LEFT JOIN (also known as LEFT OUTER JOIN) in SQL is used to combine records from two tables. It returns all the rows from the left table, and the matching rows from the right table. If there is no match, NULL values are returned for columns from the right table. The LEFT JOIN is particularly useful when you want to select all records from the left table, even if there are no corresponding records in the right table.

1. Syntax of LEFT JOIN

The basic syntax of the LEFT JOIN is as follows:

      SELECT column1, column2, ...
      FROM table1
      LEFT JOIN table2
      ON table1.column = table2.column;
    

In this syntax:

2. Example of LEFT JOIN

Consider two tables: Customers and Orders. The Customers table contains information about customers, and the Orders table records customer orders. If you want to list all customers along with any orders they have made (if any), you can use a LEFT JOIN:

      SELECT Customers.CustomerID, Customers.Name, Orders.OrderID
      FROM Customers
      LEFT JOIN Orders
      ON Customers.CustomerID = Orders.CustomerID;
    

This query returns all records from the Customers table. If a customer has placed an order, their OrderID will be included; if they haven't placed an order, the OrderID will show as NULL for that customer.

3. Example of LEFT JOIN with No Match

If there are customers in the Customers table who have not made any orders, the LEFT JOIN will still include them in the result set, with NULL values for the OrderID. For example, if Customer 1 has placed an order, but Customer 2 has not:

      SELECT Customers.CustomerID, Customers.Name, Orders.OrderID
      FROM Customers
      LEFT JOIN Orders
      ON Customers.CustomerID = Orders.CustomerID;
    

The result might look like this:

      CustomerID | Name        | OrderID
      ---------------------------------
      1          | John Doe    | 101
      2          | Jane Smith  | NULL
    

Here, John Doe has an order (OrderID 101), but Jane Smith does not have any orders, so her OrderID is NULL.

4. LEFT JOIN with Multiple Tables

You can also use LEFT JOIN with multiple tables. For example, if you want to list all customers, their orders, and the products in those orders, you could write a query like this:

      SELECT Customers.Name, Orders.OrderID, Products.ProductName
      FROM Customers
      LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID
      LEFT JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID
      LEFT JOIN Products ON OrderDetails.ProductID = Products.ProductID;
    

This query joins the Customers table with the Orders table, the OrderDetails table, and the Products table. It returns a list of all customers, their orders, and the products in those orders. If a customer has not made any orders, their name will still be included with NULL values for the OrderID and ProductName.

5. Using LEFT JOIN with Conditions

You can also apply conditions to a LEFT JOIN query using the WHERE clause. For example, if you want to find all customers who have placed an order, you can add a condition to filter out customers who have NULL OrderID:

      SELECT Customers.CustomerID, Customers.Name, Orders.OrderID
      FROM Customers
      LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID
      WHERE Orders.OrderID IS NOT NULL;
    

This query will return only customers who have placed an order, because the WHERE clause filters out the customers with NULL OrderID.

6. LEFT JOIN with Aliases

To simplify the query and make it more readable, you can use table aliases when performing a LEFT JOIN:

      SELECT c.CustomerID, c.Name, o.OrderID
      FROM Customers AS c
      LEFT JOIN Orders AS o
      ON c.CustomerID = o.CustomerID;
    

In this example, c is used as an alias for the Customers table, and o is used as an alias for the Orders table. The result is the same as before, but the query is more concise.

7. Key Points to Remember About LEFT JOIN

8. Conclusion

The LEFT JOIN is a powerful SQL operation that allows you to combine data from two tables, ensuring that all records from the left table are included in the result, even if there is no matching record in the right table. It is particularly useful for identifying missing relationships between tables and ensuring that no data from the left table is omitted. By understanding how and when to use LEFT JOIN, you can perform more complex queries and retrieve comprehensive data sets from multiple sources.



Advertisement

Advertisement

Advertisement





Q3 Schools : India


Online Complier

HTML 5

Python

java

C++

C

JavaScript

Website Development

HTML

CSS

JavaScript

Python

SQL

Campus Learning

C

C#

java