Danh sách Tutorial

[PostgreSQL] Tìm hiểu và sử dụng FULL OUTER JOIN


Khi thực hiện lấy dữ liệu từ 2 hoặc nhiều bảng sử dụng FULL OUTER JOIN, thì dữ liệu tương ứng bị khuyến giữa các bảng sẽ hiển thị 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

Nguồn: vinasupport.com

 

SHARE

mode_edit Bình luận của bạ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 *

account_circle
web