0% found this document useful (0 votes)
5 views

SQL - Joins

The SQL Join clause is used to combine data from multiple tables in a database using foreign keys. It includes various types of joins such as Inner Join, Outer Join (Left, Right, Full), Self Join, and Cross Join, each serving different purposes for data retrieval. The document provides syntax examples and a practical illustration using CUSTOMERS and ORDERS tables to demonstrate how joins work.

Uploaded by

Othniel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

SQL - Joins

The SQL Join clause is used to combine data from multiple tables in a database using foreign keys. It includes various types of joins such as Inner Join, Outer Join (Left, Right, Full), Self Join, and Cross Join, each serving different purposes for data retrieval. The document provides syntax examples and a practical illustration using CUSTOMERS and ORDERS tables to demonstrate how joins work.

Uploaded by

Othniel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

SQL - Joins https://www.tutorialspoint.com/sql/sql-using-joins.

htm

SQL - Joins
The SQL Join Clause
The SQL Join clause is used to combine data from two or more tables in a database.
When the related data is stored across multiple tables, joins help you to retrieve
records combining the fields from these tables using their foreign keys.

The part of the Join clause that specifies the columns on which records from two or
more tables are joined is known as join-predicate. This predicate is usually specified
along with the ON clause and uses various comparison operators such as, <, >, <>,
<=, >=, !=, BETWEEN, LIKE, and NOT etc. We can also connect multiple join predicates
with logical operators AND, OR, and NOT.

We can use JOINs along with update and delete, SQL queries to update and delete
records from across multiple tables. When you retrieve a table using joins, the
resultant table displayed is not stored anywhere in the database.

Syntax
Following is the basic syntax of a the SQL JOIN CLAUSE −

SELECT column_name(s)
FROM table1
JOIN table2;

Example
Assume we have created a CUSTOMERS table that contains details of the customers of
an organization using the following query −

Open Compiler

CREATE TABLE CUSTOMERS (


ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25),
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)

1 of 5 12/4/2024, 4:41 PM
SQL - Joins https://www.tutorialspoint.com/sql/sql-using-joins.htm

);

Now insert values into this table using the INSERT statement as follows −

Open Compiler

INSERT INTO CUSTOMERS VALUES


(1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ),
(2, 'Khilan', 25, 'Delhi', 1500.00 ),
(3, 'Kaushik', 23, 'Kota', 2000.00 ),
(4, 'Chaitali', 25, 'Mumbai', 6500.00 ),
(5, 'Hardik', 27, 'Bhopal', 8500.00 ),
(6, 'Komal', 22, 'Hyderabad', 4500.00 ),
(7, 'Muffy', 24, 'Indore', 10000.00 );

The CUSTOMERS table will be created as follows −

ID NAME AGE ADDRESS SALARY

1 Ramesh 32 Ahmedabad 2000.00

2 Khilan 25 Delhi 1500.00

3 Kaushik 23 Kota 2000.00

4 Chaitali 25 Mumbai 6500.00

5 Hardik 27 Bhopal 8500.00

6 Komal 22 Hyderabad 4500.00

7 Muffy 24 Indore 10000.00

Following is another table ORDERS which contains the order details made by the
customers.

Open Compiler

CREATE TABLE ORDERS (


OID INT NOT NULL,
DATE VARCHAR (20) NOT NULL,
CUSTOMER_ID INT NOT NULL,

2 of 5 12/4/2024, 4:41 PM
SQL - Joins https://www.tutorialspoint.com/sql/sql-using-joins.htm

AMOUNT DECIMAL (18, 2)


);

Using the INSERT statement, insert values into this table as follows −

Open Compiler

INSERT INTO ORDERS VALUES


(102, '2009-10-08 00:00:00', 3, 3000.00),
(100, '2009-10-08 00:00:00', 3, 1500.00),
(101, '2009-11-20 00:00:00', 2, 1560.00),
(103, '2008-05-20 00:00:00', 4, 2060.00);

The ORDERS table will be created as follows −

OID DATE CUSTOMER_ID AMOUNT

102 2009-10-08 00:00:00 3 3000.00

100 2009-10-08 00:00:00 3 1500.00

101 2009-11-20 00:00:00 2 1560.00

103 2008-05-20 00:00:00 4 2060.00

Following query performs the join operation on the tables CUSTMERS and ORDERS −

Open Compiler

SELECT ID, NAME, AGE, AMOUNT


FROM CUSTOMERS
JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;

Output
By executing the query above, the resultant table is displayed and contains the values
present in ID, NAME, AGE fields of CUSTOMERS table and AMOUNT field of ORDERS
table.

3 of 5 12/4/2024, 4:41 PM
SQL - Joins https://www.tutorialspoint.com/sql/sql-using-joins.htm

ID NAME AGE AMOUNT

3 Kaushik 23 3000

3 Kaushik 23 1500

2 Khilan 25 1560

4 Chaitali 25 2060

Types of joins in SQL


SQL provides various types of Joins that are categorized based on the way data across
multiple tables are joined together. They are listed as follows −

Inner Join
An INNER JOIN is the default join which retrieves the intersection of two tables. It
compares each row of the first table with each row of the second table. If the pairs of
these rows satisfy the join-predicate, they are joined together.

Outer Join
An Outer Join retrieves all the records in two tables even if there is no counterpart row
of one table in another table, unlike Inner Join. Outer join is further divided into three
subtypes - Left Join, Right Join and Full Join.

Following are the different types of outer Joins −

LEFT JOIN − returns all rows from the left table, even if there are no matches in
the right table.

RIGHT JOIN − returns all rows from the right table, even if there are no matches
in the left table.

FULL JOIN − returns rows when there is a match in one of the tables.

Other Joins
In addition to these there are two more joins −

SELF JOIN − is used to join a table to itself as if the table were two tables,
temporarily renaming at least one table in the SQL statement.

4 of 5 12/4/2024, 4:41 PM
SQL - Joins https://www.tutorialspoint.com/sql/sql-using-joins.htm

CROSS Join − returns the Cartesian product of the sets of records from the two
or more joined tables.

5 of 5 12/4/2024, 4:41 PM

You might also like