SQL SQL Tutorial SQL Database



SQL Joins

SQL Joins are used to combine data from two or more tables in a relational database. It allows you to retrieve data from multiple tables in a single query. SQL Joins are one of the most important concepts in SQL and are used extensively in database programming.

There are different types of SQL Joins, including Inner Join, Left Join, Right Join, and Full Outer Join. Each type of Join is used to retrieve data from tables based on specific conditions.

Inner Join

The Inner Join is the most commonly used type of Join in SQL. It returns only the rows that have matching values in both tables. The syntax for Inner Join is as follows:

SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;

For example, suppose we have two tables, Customers and Orders. The Customers table has the following columns: CustomerID, CustomerName, and ContactName. The Orders table has the following columns: OrderID, CustomerID, and OrderDate. To retrieve the CustomerName and OrderDate for all orders, we can use the following Inner Join query:

SELECT Customers.CustomerName, Orders.OrderDate
FROM Customers
INNER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;

Left Join

The Left Join returns all the rows from the left table and the matching rows from the right table. If there is no match in the right table, the result will contain NULL values. The syntax for Left Join is as follows:

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;

For example, suppose we have two tables, Customers and Orders. To retrieve all customers and their orders, including those who have not placed any orders, we can use the following Left Join query:

SELECT Customers.CustomerName, Orders.OrderDate
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;

Right Join

The Right Join returns all the rows from the right table and the matching rows from the left table. If there is no match in the left table, the result will contain NULL values. The syntax for Right Join is as follows:

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;

For example, suppose we have two tables, Customers and Orders. To retrieve all orders and their customers, including those that do not have any customers, we can use the following Right Join query:

SELECT Customers.CustomerName, Orders.OrderDate
FROM Customers
RIGHT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;

Full Outer Join

The Full Outer Join returns all the rows from both tables, including those that do not have matching values in the other table. If there is no match in one of the tables, the result will contain NULL values. The syntax for Full Outer Join is as follows:

SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name;

For example, suppose we have two tables, Customers and Orders. To retrieve all customers and their orders, including those who have not placed any orders and those orders that do not have any customers, we can use the following Full Outer Join query:

SELECT Customers.CustomerName, Orders.OrderDate
FROM Customers
FULL OUTER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;

SQL Joins are a powerful tool for retrieving data from multiple tables in a single query. By understanding the different types of Joins and their syntax, you can write complex queries that retrieve exactly the data you need.

References

Activity