Categories SQL

Các kiểu SQL Join

Một mệnh đề SQL JOIN được dùng để kết hợp các hàng từ hai hoặc nhiều bảng, dựa trên một trường chung giữa chúng.

Một kiểu nối phổ biến nhất là: SQL INNER JOIN (nối đơn giản). SQL INNER JOIN trả về tất cả các hàng từ nhiều bảng nơi điều kiện nối gặp gỡ nhau.

Cùng quan sát một lựa chọn từ bảng “Orders”:

OrderID CustomerID OrderDate
10308 2 1996-09-18
10309 37 1996-09-19
10310 77 1996-09-20

Tiếp đó, ta nhìn tiếp vào một lựa chọn từ bảng “Customers”:

CustomerID CustomerName ContactName Country
1 Alfreds Futterkiste Maria Anders Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Mexico
3 Antonio Moreno Taquería Antonio Moreno Mexico

Lưu ý cột “CustomerID” trong bảng “Orders” viện dẫn từ “CustomerID” trong bảng “Customers”. Mối quan hệ giữa hai bảng trên là cột “CustomerID”.

Sau đó, nếu chúng ta chạy câu lệnh SQL sau (bao gồm INNER JOIN).

Ví dụ:

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

Nó sẽ tạo ra bảng kiểu như thế này:

OrderID CustomerName OrderDate
10308 Ana Trujillo Emparedados y helados 9/18/1996
10365 Antonio Moreno Taquería 11/27/1996
10383 Around the Horn 12/16/1996
10355 Around the Horn 11/15/1996
10278 Berglunds snabbköp 8/12/1996

Các kiểu SQL JOIN

Trước khi chúng ta tiếp tục với các ví dụ, chúng ta sẽ liệt kê các kiểu SQL JOIN bạn có thể sử dụng:

  • INNER JOIN: Trả về tất cả các hàng khi có ít nhất một sự phù hợp trong CẢ HAI bảng
  • LEFT JOIN: Trả về tất cả các hàng từ bảng trái, và các hàng phù hợp từ bảng phải
  • RIGHT JOIN: Trả về tất cả các hàng từ bảng phải, và các hàng phù hợp từ bảng trái
  • FULL JOIN: Trả về tất cả các hàng khi có một điều phù hợp trong MỘT của các bảng
Back to Top