01. Cross JOIN trong SQL

Cross JOIN trong SQL

Khi thực hiện phép cross JOIN hay có một tên khác là Cartesian JOIN, mỗi hàng của bảng thứ nhất sẽ được kết hợp với mỗi hàng của bảng thứ hai. Do vậy số lượng các hàng trong bảng mới tạo ra bằng tích số lượng hàng giữa các bảng.

Cú pháp của phép cross JOIN là:

SELECT * FROM [BANG1] CROSS JOIN [BANG2] 

Hoặc

SELECT * FROM [ BANG1] , [BANG2] 

Giả sử ta có hai bảng dữ liệu:

Bảng 1 – Diemso

Nguoi_choi PhongID Diem
Phan Linh 1 2
Lan Anh 1 3
Pham An 2 2
Le Hoi 3 5

Bảng 2 – Phong

PhongID Ten
1 IT
2 HR
3 Marketing

Sau khi thực hiện phép cross JOIN:

SELECT * FROM Diemso CROSS JOIN Phong

Kết quả thu được:

Nguoi_choi PhongID Diem PhongID Ten
Phan Linh 1 2 1 IT
Lan Anh 1 3 1 IT
Pham An 2 2 1 IT
Le Hoi 3 5 1 IT
Phan Linh 1 2 2 HR
Lan Anh 1 3 2 HR
Pham An 2 2 2 HR
Le Hoi 3 5 2 HR
Phan Linh 1 2 3 Marketing
Lan Anh 1 3 3 Marketing
Pham An 2 2 3 Marketing
Le Hoi 3 5 3 Marketing

Cách sử dụng cross JOIN hay bất kỳ một loại JOIN nào khác là do mong muốn lấy dữ liệu của bạn. Và ta hoàn toàn có thể kết hợp các kỹ thuật khác nhau để có thể lấy được dữ liệu như mong muốn.

Trả lời

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 *