Coding With Fun
Home Docker Django Node.js Articles Python pip guide FAQ Policy

SQL INNER JOIN keyword (internal connection)


May 16, 2021 SQL


Table of contents


SQL INNER JOIN keyword (internal connection)


The internal link INNER JOIN keyword selects records with matching values in both tables.

SQL INNER JOIN syntax

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

Note: INNER JOIN is the same as JOIN.

SQL INNER JOIN keyword (internal connection)


Demonstrate the database


In this tutorial, we'll use the famous Northwind sample database.

Here's the data from the Customers table:

CustomerID CustomerName ContactName Address City PostalCode Country
1
Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

Data selected from the Orders table:

OrderID CustomerID EmployeeID OrderDate ShipperID
10308 2 7 1996-09-18 3
10309 37 3 1996-09-19 1
10310 77 8 1996-09-20 2

SQL INNER JOIN instance


The following SQL statement returns all customers who placed the order:

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

Note: If there is at least one match in the table, the INNER JOIN keyword returns a row. If the rows in the Customers table do not match Orders, the rows are not listed.


Add three tables


The following SQL statement selects all orders that contain customer and freight order information:

Code example:

SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM ((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);