Latest Post

Khái niệm về Solidity và tổng quan về ngôn ngữ lập trình Solidity Phương pháp kiểm tra nhiệt độ CPU đơn giản

Khi sử dụng FULL OUTER JOIN để truy vấn dữ liệu từ 2 bảng trở lên, thì những dòng dữ liệu không có sự liên kết giữa các bảng sẽ có giá trị NULL.

Ta có thể hiểu là hợp dữ liệu của 2 hoặc nhiều bảng.

Cú pháp lệnh của FULL OUTER JOIN

SELECT
Table_A.pk_column,
Table_A.columns,
Table_B.pk_column,
Table_B.columns
FROM
Table_A
FULL OUTER JOIN
Table_B ON Table_A.pk_column = Table_B.fk_column;

Ví dụ về sử dụng FULL OUTER JOIN

Chúng ta có 2 bảng là users và groups có mối quan hệ như sau:

Chú ý: Để sử dụng FULL OUTER JOIN thì giữa các bảng CSDL không tồn tại liên kết khóa ngoại.

Trong đó dữ liệu của bảng users là:

Còn dữ liệu của bảng groups là:

Yêu cầu: Sử dụng FULL OUTER RIGHT để lấy dữ liệu về user và group

SELECT u.user_id, u.username, g.group_name
FROM users as u
FULL OUTER JOIN groups as g ON u.group_id = g.group_id

Kết quả:

User “PhươngLTM” không có dữ liệu ở bảng groups nên group_name có giá trị là null

Group “author“, “developer” và “partner” không có user nào liên kết nên user_id và username hiển thị giá trị là null

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *