Introduction to SQL Join types
Published: 2024-02-16 10:58:36

My name is Sushma B R, and I am working as Software Engineer at Luxoft India. In this article I will be providing the detailed information towards SQL join types. Luxoft has provided me with multiple opportunity to work on various projects SQL is one among them.

This article will provide an overview of the SQL Join and cowl all the SQL join types such as inner, self, pass and outer. For inner joins we’ll be discussing Equi and Theta joins.

The capability to mix results from associated rows from more than one tables is an important a part of relational database gadget design. In SQL Server, this is performed with the SQL be a part of clause. It’s the nature of traditional relational database systems in which a few table includes statistics associated with different tables with a commonplace key fee. Using a SQL be a part of, you can easily carry out queries on related facts-units from multiple tables with these shared keys.

The goal of this article is to provide you with the basic know-how and examples that you'll want to apply the SQL be part of effectively in any database environment.

**What is a SQL join?**

A SQL Join is a unique shape of generating a significant information by way of combining more than one tables relate to each other using a “Key”. Typically, relational tables must be designed with a completely unique column and this column is used to create relationships with one or extra different tables. When you need a result-set that includes associated rows from a couple of tables, you’ll need to use SQL join in this column

**The various SQL join types are as follows**

1. SQL inner join

     a. Equi join

     b. Non-equi join (Theta join)

2. SQL cross join

3. SQL self join

4. SQL outer join

     a. SQL left join or left outer join

     b. SQL right join or right outer join

     c. SQL full join or full outer join


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t4jw7bfuxfn1agh59cqb.png)

**1. SQL inner join:**

The simplest and most not unusual shape of a join is the SQL internal join the default of the SQL be part of sorts utilized in most database management structures. It’s the default SQL be part of you get when you use the be part of key-word by itself.

The end result of the SQL inner join consists of rows from both the tables in which the join conditions are met.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0fe4sevyfit3fg6k0ujp.png)

**a. Equi join:**

An equi be part of is the most not unusual shape of SQL internal join utilized in practice. If the be a part of incorporates an equality operator e.G. =, then it’s an equi-be a part of.

**b. Theta join (Non-equi join):**

In fashionable, this a Theta be part of used to specify operators or conditions (the ON clause in SQL). In exercise, this is a rarely used SQL be part of kinds. In most instances, the be part of will use a non-equality condition e.G. >

**2. SQL self join:**

A SQL Self join is a mechanism of joining a desk to itself. You could use a self be a part of when you wanted to create a result set joining information inside the table with a few different statistics from the identical table.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kgavtshzw8xps451fu0t.png)

**3. SQL cross join:**

A CROSS join returns all rows for all possible combinations of  tables. It generates all the rows from the left desk that's then blended with all the rows from the proper table. This kind of be part of is likewise called a Cartesian product(A*B).


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3s5w4q24jn1riydn6n5f.png)

**4. SQL outer join:**

On becoming a member of tables with a SQL inner be a part of, the output returns handiest matching rows from both the tables. When the use of a SQL outer be part of, not only it'll list the matching rows, it'll additionally list the unrivaled rows from the alternative tables.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s0m9wh720jj6fv03s25q.png)

**a. SQL left outer:** 

A SQL left outer join will return all of the information from the left table in the be a part of clause, irrespective of matching facts inside the proper desk. The left SQL outer be part of includes rows where the circumstance is met plus all the rows from the desk on the left wherein the situation isn't met. Fields from the proper desk with out a healthy will be displayed as null values.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c7au2pahlvjzqpqak0zt.png)

**b. Right outer join:**

A right outer join will go back all the facts within the right table in the join clause, irrespective of matching records in the left desk. Using the proper SQL outer join consists of all of the rows from the desk on the proper. The right SQL outer join is considered a special case and plenty of databases don’t support proper joins. Generally, a SQL right join may be rewritten as a SQL left be a part of via sincerely converting the order of the tables in the query. In this instance, fields from the left table with out a match will display null values.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8ny624zazn5naafsd08c.png)

**c. SQL outer join:**

A SQL outer be a part of, as you may anticipate by using now, will go back all the rows in each tables. When rows don’t have a in shape in one of the tables, the field will display a null price. A complete SQL outer be part of combines the consequences of the SQL left joins and SQL proper joins. Many databases do now not support the implementation of complete SQL outer joins.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0rhbhqqsw3vbd3ng4tpj.png)

**Conclusion:**
We’ve discussed most of the important factors of SQL Joins and included a variety of SQL join types. We’ve also validated some short examples and samples of how we are able to pull records from associated tables from the Adventureworks2016 database and the way those tables truly get that dating thru the usage of those keys using SQL joins.