SQL INNER JOIN

The INNER JOIN keyword selects records that have matching values in both tables.

 

Syntax:

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

 

Customers table:

customer_id fullname
1 Kailash
2 Amit
3 Siddarth
4 Vikas

Orders table:

order_id amount customer
1 2000 2
2 3000 4
3 1500 5
4 2500 7

 

Here, the SQL command selects customer_id and fullname columns (from the Customers table) and the amount column (from the Orders table).

QUERY:

SELECT Customers.customer_id, Customers.fullname, Orders.amount
FROM Customers
INNER JOIN Orders
ON Customers.customer_id = Orders.customer;

 

And, the result set will contain those rows where there is a match between customer_id (of the Customers table) and customer (of the Orders table).

Result:

customer_id fullname amount
2 Amit 2000
4 Vikas 3000

INNER JOIN With WHERE Clause

SELECT Customers.customer_id, Customers.fullname, Orders.amount
FROM Customers
INNER JOIN Orders
ON Customers.customer_id = Orders.customer
WHERE Orders.amount >= 3000;

Result:

customer_id fullname amount
4 Vikas 3000