Tin tức

Kiến thức SQL: Từ khóa INNER JOIN

08/07/2013

Từ khóa INNER JOIN lấy ra tất cả các dòng từ các bảng có giá trị chung giữa các cột.

Cú pháp:

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

Hoặc:

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

Chú ý: INNER JOIN cũng giống như là JOIN

Dưới đây là bảng Customers:

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

 

Và bảng “Orders”:

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

 

Ví dụ:

Lấy ra tất cả các khách hàng với các hóa đơn của họ:

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

Chú ý: Lệnh INNER JOIN lấy ra tất cả các dòng có giá trị chung giữa các bảng. Nếu các dòng trong bảng “Customers” mà không đúng với giá trị bên “Orders” thì dữ liệu bên “Customers” sẽ không được lấy ra.