Định hướng lộ trình sự nghiệp Dược phẩm cùng mentor 20 năm kinh nghiệm thực tế trong Career Workshop: Pharma Business ngay!

Các hàm Join trong SQL

Hàm JOIN là một trong những hàm quan trọng nhất trong SQL, nó cho phép bạn kết hợp dữ liệu từ hai hoặc nhiều bảng dựa trên các cột chung. Việc sử dụng JOIN giúp bạn truy xuất dữ liệu một cách hiệu quả và dễ dàng hơn, đặc biệt khi dữ liệu được phân chia trên nhiều bảng. 

Cùng tìm hiểu cách sử dụng các hàm JOIN cùng ví dụ thông qua bài viết này nhé!

INNER JOIN/JOIN

Khi sử dụng INNER JOIN, chỉ những bản ghi có giá trị khớp nhau ở cả hai bảng mới được trả về. 

Cấu trúc:  

SELECT *  

FROM table1  

INNER JOIN table2  

ON table1.column = table2.column; 

Giải thích: 

– SELECT *: Chọn tất cả các cột từ cả hai bảng. 
– table1: Tên bảng thứ nhất. 
– table2: Tên bảng thứ hai. 
– ON: Chỉ định điều kiện join, so sánh các cột chung giữa hai bảng. 

Ví dụ: 

Giả sử chúng ta có hai bảng: 

– genre: Chứa thông tin về thể loại phim, bao gồm mã phim (movie_id) và thể loại (genre). 
– rating: Chứa thông tin về xếp hạng phim, bao gồm mã phim (movie_id) và thứ hạng (rating). 
Để lấy thông tin về thể loại và thứ hạng, chúng ta có thể sử dụng INNER JOIN như sau: 

SELECT * 

FROM genre 

INNER JOIN rating 

ON genre.movide_id = rating.movie_id; 

Kết quả trả về sẽ bao gồm các bản ghi có mã phim trong bảng genre khớp với mã phim trong bảng rating

2

LEFT JOIN:

Khi sử dụng LEFT JOIN, tất cả các bản ghi từ bảng bên trái (bảng được chỉ định đầu tiên) sẽ được trả về, ngay cả khi không có bản ghi nào khớp trong bảng bên phải (bảng được chỉ định thứ hai). 

Cấu trúc: 

SELECT * 
FROM table1 
LEFT JOIN table2 
ON table1.column = table2.column;

Giải thích: 

– SELECT *: Chọn tất cả các cột từ cả hai bảng. 

– table1: Tên bảng bên trái.

– table2: Tên bảng bên phải. 

– ON: Chỉ định điều kiện join, so sánh các cột chung giữa hai bảng. 

Ví dụ: 

Chúng ta muốn lấy thông tin về thể loại và thứ hạng của các bộ phim, bao gồm cả những bộ phim chưa được đánh giá. Chúng ta có thể sử dụng LEFT JOIN như sau: 

SELECT g.movie_id, g.genre, r.rating 

FROM genre AS g 

LEFT JOIN rating AS r 

ON genre.movide_id = rating.movie_id; 

Kết quả trả về sẽ bao gồm tất cả các bản ghi trong bảng genre. Đối với những bộ phim chưa được đánh giá, cột rating sẽ trả về giá trị NULL. 

3

RIGHT JOIN

Khi sử dụng RIGHT JOIN, tất cả các bản ghi từ bảng bên phải (bảng được chỉ định thứ hai) sẽ được trả về, ngay cả khi không có bản ghi nào khớp trong bảng bên trái (bảng được chỉ định đầu tiên). 

Cấu trúc: 

SELECT * 
FROM table1 
RIGHT JOIN table2 
ON table1.column = table2.column; 

Giải thích: 

– SELECT *: Chọn tất cả các cột từ cả hai bảng. 
– table1: Tên bảng bên trái. 
– table2: Tên bảng bên phải. 
– ON: Chỉ định điều kiện join, so sánh các cột chung giữa hai bảng. 

Ví dụ: 

Chúng ta muốn lấy thông tin về điểm đánh giá và thể loại của những phim đó. Chúng ta có thể sử dụng RIGHT JOIN như sau: 

SELECT movie_id, genre, rating 

FROM movie 

RIGHT JOIN rating 

ON genre.movide_id = rating.movie_id; 

Kết quả trả về sẽ bao gồm tất cả các bản ghi trong bảng rating. Đối với những phim chưa được ghi nhận thể loại, cột genre sẽ trả về giá trị NULL. 

4

FULL JOIN

FULL JOIN trả về tất cả các bản ghi từ cả hai bảng, bao gồm cả những bản ghi chỉ xuất hiện trong một trong hai bảng. 

Cấu trúc: 

SELECT * 
FROM table1 
FULL JOIN table2 
ON table1.column = table2.column;  

Giải thích: 

– SELECT *: Chọn tất cả các cột từ cả hai bảng. 
– table1: Tên bảng bên trái. 
– table2: Tên bảng bên phải. 
– ON: Chỉ định điều kiện join, so sánh các cột chung giữa hai bảng. 

Ví dụ: 

Chúng ta muốn lấy thông tin về thể loại và đánh giá của tất cả các phim, bao gồm cả những bộ phim chưa được ghi nhận thể loại và những bộ phim chưa có đánh giá. Chúng ta có thể sử dụng FULL JOIN như sau: 

SELECT movie_id, genre, rating 

FROM movie 

FULL JOIN rating 

ON genre.movide_id = rating.movie_id; 

Kết quả trả về sẽ bao gồm tất cả các bản ghi trong cả hai bảng movie và rating. Đối với những bộ phim chưa được ghi nhận thể loại, cột genre sẽ trả về giá trị NULL. Đối với những bộ phim chưa có đánh giá nào, cột rating sẽ trả về giá trị NULL. 

5

Xem thêm: 

Phân tích dữ liệu cùng SQL: Các câu lệnh truy vấn đơn giản

Vai trò và kỹ năng của Data Analyst trong năm 2024

Khóa học Ứng dụng SQL trong xử lý dữ liệu

Combo 3 Khóa học Data Analytics for Professionals

 

Để 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 *

1 + 1 = ? (Nhập Haii để trả lời đúng)

Bài viết liên quan
Data Analysis Breakthrough Scholarship 2026

Với mong muốn tạo điều kiện cho các bạn trẻ tiếp cận kiến thức bài bản và phát triển tư duy phân tích dữ liệu thực tiễn, Data Analysis Breakthrough Scholarship 2026 chính

Xem thêm
Ưu đãi tháng 05/2026

Chương trình ưu đãi 05/2026 này mang đến ưu đãi kép cho học viên: Giảm ngay 155.000đ trên mức ưu đãi đóng sớm khi học viên đăng ký bất kỳ khóa học nào trong tháng này.

Xem thêm
So sánh ChatGPT vs Gemini vs Claude 2026: Nên chọn AI tool nào?

Ba cái tên ChatGPT, Gemini và Claude xuất hiện ở khắp nơi khi nói về AI, nhưng không cái nào là “tốt nhất tuyệt đối”. Mỗi tool có điểm mạnh khác

Xem thêm
Claude là gì? Tìm hiểu AI assistant của Anthropic và cách dùng 2026

Nếu bạn đã nghe tên ChatGPT nhưng chưa biết Claude là gì, bạn đang bỏ qua một trong những AI assistant mạnh nhất hiện nay, đặc biệt nếu công việc của

Xem thêm