Cách sử dụng câu lệnh truy vấn JOIN trong SQL

5.0/5 (1 Reviews)

câu lệnh JOIN trong SQL thực sự hữu ích khi bạn muốn kết hợp dữ liệu từ hai hoặc nhiều bảng. Dựa trên mối quan hệ giữa các bảng, có một số loại JOIN khác nhau mà bạn có thể sử dụng.

Ở bài viết này, LPTech sẽ cho bạn biết OUTER JOIN và INNER JOIN trong SQL là gì. Đồng thời còn hướng dẫn bạn cách sử dụng các loại JOIN một cách chính xác nhất. Tham khảo bài viết ngay để tích lũy thêm nhiều kiến thức hữu về câu lệnh truy vấn JOIN trong SQL bạn nhé. 

JOIN trong SQL là gì?

Ngôn ngữ truy vấn có cấu trúc (SQL) là ngôn ngữ lập trình được nghiên cứu và phát triển nhằm để lưu trữ, xử lý cũng như trích xuất những dữ liệu có trong các cơ sở dữ liệu quan hệ. Dạng ngôn ngữ lập trình này có thể hoạt động với nhiều hệ quản trị cơ sở dữ liệu (DBMS) như: MySQL, SQL Server, Informix, Postgres, MS Access, Oracle, Sybase,...

Toán tử JOIN sẽ giúp người dùng kết hợp được các thông tin có liên quan thông qua nhiều cách thức khác nhau. JOIN được biết đến phổ biến với hai loại kết nối chính là kết nối INNERkết nối OUTER.

Tìm hiểu thông tin về ngôn ngữ truy vấn có cấu trúc (SQL) và JOIN

> Xem thêm:

Cách sử dụng INNER JOIN trong SQL

INNER JOIN trong SQL là dạng JOIN phổ biến và thường được sử dụng nhất. Nó thực hiện việc trả về các bản ghi có giá trị khớp trong hai bảng và loại bỏ đi các bản ghi có giá trị không khớp. 

INNER JOIN trong SQL có tác dụng lọc những dữ liệu liên quan và chính xác từ các bảng. Nhờ vậy mà tránh được tình trạng dữ liệu bị thừa hoặc là bị sai lệch. Ngoài ra, INNER JOIN còn có thể tối ưu hóa hiệu năng của truy vấn, rút ngắn thời gian xử lý và tăng tốc độ trả về kết quả.

Như hình bên dưới, phép nối sẽ giữ lại thông tin từ hai bảng đã nối có liên quan với nhau. Ví dụ hai bảng dưới là dạng sơ đồ Venn, kết quả nhận được từ INNER JOIN là khu vực màu xanh lá cây, chồng chéo lên nhau.

INNER JOIN là dạng JOIN được sử dụng phổ biến nhất

Cú pháp INNER JOIN trong SQL:

SELECT column_name(s)

FROM table1

INNER JOIN table2

ON table1.column_name = table2.column_name;

Cú pháp INNER JOIN nhiều table:

SELECT column_list

FROM table1

INNER JOIN table2 ON join_condition1

INNER JOIN table3 ON join_condition2

Ví dụ: chúng ta dùng INNER JOIN để kết hợp dữ liệu từ hai bảng BảngA và BảngB:

SELECT BảngA.cột1, BảngB.cột2

FROM BảngA

INNER JOIN BảngB ON BảngA.khóa_chung = BảngB.khóa_chung;

Cách sử dụng OUTER JOIN trong SQL

Trong trường hợp người dùng không chỉ muốn giữ lại những dữ liệu có liên quan, mà còn muốn giữ lại nhiều hơn thế thì nên sử dụng đến phép nối OUTER. OUTER JOIN trong SQL có ba loại bao gồm: RIGHT JOIN, LEFT JOIN, và FULL JOIN

Ba loại này có sự khác biệt chủ yếu là ở những dữ liệu không liên quan mà chúng lưu giữ. Đó là ở bảng thứ nhất, thứ hai hoặc là ở cả hai bảng. Với những ô không có dữ liệu cần điền thì sẽ có giá trị là NULL. Cùng tìm hiểu về ba loại OUTER JOIN trong SQL và cách sử dụng chúng ngay bên dưới đây bạn nhé.

LEFT OUTER JOIN (LEFT JOIN) trong SQL

Khi bạn sử dụng hàm LEFT JOIN trong SQL, ngoài giữ lại dữ liệu liên quan của hai bảng thì nó còn dữ lại dữ liệu không liên quan của bảng đầu tiên (bảng bên trái). Tức là như hình bên dưới, khi bạn sử dụng sơ đồ Venn với hai vòng tròn. Kết quả bạn nhận được sẽ là phần màu xanh lá cây, gồm có phần chồng chéo của hai vòng tròn và cả phần của vòng tròn bên trái. 

Kết quả LEFT JOIN là dữ liệu chung và dữ liệu của bảng bên trái

Câu lệnh LEFT JOIN trong SQL:

SELECT column_name(s)

FROM table1

LEFT JOIN table2

ON table1.column_name = table2.column_name;

LEFT JOIN cũng có thể join nhiều table:

SELECT column_list

FROM table1

LEFT JOIN table2 ON join_condition1

LEFT JOIN table3 ON join_condition2

RIGHT OUTER JOIN (RIGHT JOIN) trong SQL

RIGHT OUTER JOIN hay còn được gọi đơn giản là RIGHT JOIN. Khi sử dụng RIGHT JOIN, ngoài dữ liệu liên quan thì nó còn giữ lại dữ liệu có trong bảng thứ hai. Trong sơ đồ Venn có hai vòng tròn như hình bên dưới, kết quả nhận được là khu vực màu xanh lá cây. Khu vực này bao gồm dữ liệu chung của hai vòng tròn và dữ liệu không liên quan trong vòng tròn thứ 2 (vòng tròn bên phải).

Kết quả RIGHT JOIN là dữ liệu chung và dữ liệu của bảng bên phải

Cú pháp của RIGHT OUTER JOIN trong SQL:

SELECT column_name(s)

FROM table1

RIGHT JOIN table2

ON table1.column_name = table2.column_name;

Vẫn với data 2 bảng trên các bạn hãy thử chạy câu lệnh RIGHT JOIN nhé!

RIGHT JOIN cũng có thể join nhiều table

SELECT column_list

FROM table1

RIGHT JOIN table2 ON join_condition1

RIGHT JOIN table3 ON join_condition2

FULL OUTER JOIN (FULL JOIN) trong SQL

FULL OUTER JOIN trong SQL chính là sự kết hợp của RIGHT JOIN và LEFT JOIN. Tức là nó sẽ giữ lại tất cả các dữ liệu có trong hai bảng. Với dữ liệu còn thiếu thì sẽ được điền bằng giá trị NULL.

Như hình bên dưới với sơ đồ Venn có hai vòng tròn. Kết quả nhận được là khu vực được đánh dấu màu xanh lá cây. Khu vực này bao gồm phần dữ liệu chồng chéo lên nhau của hai bảng và phần dữ liệu không liên quan của bảng bên trái lẫn bên phải.

FULL JOIN là kết hợp của RIGHT JOIN và LEFT JOIN

Cú pháp FULL OUTER JOIN trong SQL:

SELECT column_name(s)

FROM table1

FULL OUTER JOIN table2

ON table1.column_name = table2.column_name

WHERE condition;

Qua bài viết ở trên, LPTech đã cung cấp đến bạn những thông tin hữu ích về OUTER JOIN và INNER JOIN trong SQL. Giúp bạn biết được cách sử câu lệnh truy vấn JOIN có trong SQL sau cho hiệu quả và chính xác. Đừng quên thường xuyên theo dõi những bài viết khác của LPTech để cập nhật những kiến thức bổ ích bạn. 

Thông Tin Liên Hệ

ĐỀ XUẤT CHO BẠN

Bài Viết Cùng Chuyên Mục

article-img

Mạng LAN là gì? Kết nối máy tính như thế nào? Các loại kết nối LAN

Mạng LAN là một loại mạng máy tính nội bộ, được sử dụng để các thiết bị có thể thiết kế với nhau và chia sẻ dữ liệu trong một khu vực nhỏ như tòa nhà, phòng net...

author-avatar

Nguyễn Thị Ái Vy

20/09/2024

XEM CHI TIẾT
article-img

ISP là gì? Yếu tố cần đánh giá khi chọn nhà mạng

ISP là nhà cung cấp dịch vụ internet, giúp người dùng có thể kết nối intetnet ở mọi lúc mọi nơi, cùng tìm hiểu chi tiết hơn qua bài viết bên dưới bạn nhé.

author-avatar

Nguyễn Thị Quyền Trang

16/09/2024

XEM CHI TIẾT
article-img

Localhost là gì? Chức năng và cách cài đặt localhost chi tiết

Localhost là gì? Đây là một thuật ngữ quen thuộc trong lĩnh vực quản trị website. Localhost có thể được hiểu đơn giản là chạy máy tính của bạn trên máy chủ.

author-avatar

Nguyễn Thị Ái Vy

11/07/2024

XEM CHI TIẾT
article-img

Lỗi err_connection_refused là gì? Nguyên nhân và cách sửa

Err_connection_refused là lỗi liên quan đến việc xảy ra trục trặc trong quá trình kết nối giữa máy chủ web và trình duyệt web. Tìm hiểu nguyên nhân và cách sửa lỗi.

author-avatar

Đặng Nguyễn Hiệp

10/07/2024

XEM CHI TIẾT
article-img

Cách xóa bộ đệm DNS trên Windows, Mac và Chrome

Làm sao để xóa bộ đệm DNS ra khỏi các loại trình duyệt web? Tìm hiểu ở bài viết này cách xóa DNS cache khỏi Windows, Mac và Chrome bằng chrome net internals dns. 

author-avatar

Đặng Nguyễn Hiệp

24/06/2024

XEM CHI TIẾT
article-img

Cloud Desktop là gì? Cách hoạt động và sử dụng máy tính ảo Cloud

Cloud Desktop là gì? Tìm hiểu cách thức hoạt động của máy tính ảo trên đám mây và hướng dẫn sử dụng chi tiết. Khám phá lợi ích của việc truy cập và làm việc từ xa với mọi thiết bị.

author-avatar

Đặng Nguyễn Hiệp

20/06/2024

XEM CHI TIẾT

Chất Lượng Sản Phẩm Tạo Nên Uy Tín Doanh Nghiệp.

Tầm nhìn của LPTech mong muốn trở thành công ty Công nghệ không chỉ phát triển tại thị trường Việt Nam mà còn mở rộng ra cả khu vực Asia. Vậy nên, mỗi một công việc mà LPTech làm đều sẽ ảnh hưởng đến thương hiệu của công ty ở hiện tại lẫn tương lai. Chính vì thế, quý khách hàng có thể yên tâm về chất lượng website được thiết kế tại LPTech.

LIÊN HỆ NGAY
bgQuality

THÔNG BÁO

Tin nổi bật

notification-img
Thông báo lịch nghỉ lễ Mùng 10 tháng 3, 30/4 và 1/5 năm 2026

Công ty TNHH Thương mại Điện tử Công nghệ LP xin thông báo đến Quý Khách hàng, Đối tác và toàn thể Nhân viên lịch nghỉ lễ 10/3, 30/4 và 1/5 năm 2026

notification-img
Thông báo nghỉ Tết Nguyên Đán 2026

LPTech kính chúc Quý Khách hàng, Quý Đối tác và toàn thể nhân sự một năm mới an khang, nhiều niềm vui, đủ đầy yêu thương và vững bước thành công.

notification-img
Thông báo lịch nghỉ Tết Dương lịch 2026

Chào đón năm mới 2026, LPTech xin gửi đến Quý Khách hàng, Đối tác và toàn thể nhân viên lời chúc sức khỏe, bình an và thành công, đồng thời thông tin về lịch nghỉ Tết Dương lịch 2026 của Công ty.

notification-img
Vũng Tàu: Du lịch công ty 2 ngày 1 đêm cùng LPTech

Giữa những ngày cuối năm bận rộn, cả team rủ nhau đi trốn một chuyến về Vũng Tàu để đổi gió và tận hưởng biển xanh. Một chuyến đi đầy ắp kỉ niệm.

notification-img
Thông báo lịch nghỉ du lịch thường niên 2025

Một chuyến du lịch ngắn ngày nhưng đầy năng lượng này sẽ giúp đội ngũ LPTech tạm rời nhịp làm việc, nghỉ ngơi và sẵn sàng cho những mục tiêu mới.

notification-img
Tết Trung Thu 2025 – Mùa trăng đoàn viên, mùa yêu thương lan tỏa

Giữa sắc đèn lung linh và hương bánh nồng nàn, Tết Trung Thu trở về như bản nhạc dịu êm của đoàn viên, hạnh phúc và sự gắn kết.

notification-img
LPTech chào mừng Quốc khánh 2/9 – 80 năm tự hào dân tộc

Kỷ niệm Quốc khánh 2/9 – LPTech tự hào đồng hành cùng tinh thần dân tộc, tổ chức nhiều hoạt động nội bộ ý nghĩa để gắn kết tập thể và lan tỏa giá trị yêu nước.

notification-img
Thông báo lịch nghỉ lễ Quốc khánh 2025

LPTech kính chúc Quý khách hàng, Đối tác và toàn thể nhân viên có một kỳ nghỉ lễ vui bên gia đình và người thân!