Chìa khóa FULL JOIN trong SQL

Chìa khóa FULL JOIN trong SQL

Chỉ cần một trong các bảng có khớp, từ khóa FULL JOIN sẽ trả về dòng.

FULL JOIN từ khóa ngữ pháp

SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name

Chú thích:Trong một số cơ sở dữ liệu, FULL JOIN được gọi là FULL OUTER JOIN.

Bảng gốc (sử dụng trong ví dụ):

Bảng "Persons":

Id_P LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing

Bảng "Orders":

Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65

Mô hình FULL JOIN

Bây giờ, chúng ta muốn liệt kê tất cả mọi người, cũng như các đơn hàng của họ, cũng như tất cả các đơn hàng, cũng như những người đặt hàng.

Bạn có thể sử dụng câu lệnh SELECT dưới đây:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
FULL JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName

Kết quả tập hợp:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678
Bush George  
    34764

Khóa từ FULL JOIN sẽ trả về tất cả các hàng từ bảng bên trái (Persons) và bảng bên phải (Orders). Nếu hàng trong "Persons" không có khớp trong bảng "Orders", hoặc nếu hàng trong "Orders" không có khớp trong bảng "Persons", các hàng này cũng sẽ được liệt kê.