Phép toán LEFT JOIN, RIGHT JOIN

Kết hợp các bản ghi bảng nguồn khi được dùng trong mệnh đề FROM bất kỳ.

Cú pháp

FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1compopr table2.field2

Các phép toán LEFT JOIN và RIGHT JOIN có những phần sau:

Phần

Mô tả

table1, table2

Tên của bảng mà bản ghi được kết hợp từ đó.

field1, field2

Tên của trường được nối. Các trường cần phải có cùng kiểu dữ liệu và chứa cùng kiểu dữ liệu nhưng không cần phải có cùng tên.

compopr

Bất kỳ toán tử so sánh quan hệ nào: "=," "<," ">," "<=," ">=," hoặc "<>."


Chú thích

Sử dụng phép toán LEFT JOIN để tạo một nối ngoài bên trái. Nối ngoài trái bao gồm tất cả các bản ghi từ đầu tiên (trái) của hai bảng, thậm chí nếu không có giá trị nào khớp dành cho các bản ghi trong bảng thứ hai (phải).

Sử dụng phép toán RIGHT JOIN để tạo một nối ngoài bên phải. Nối ngoài phải bao gồm tất cả các bản ghi từ thứ hai (phải) của hai bảng, thậm chí nếu không có giá trị nào khớp dành cho các bản ghi trong bảng thứ nhất (trái).

Ví dụ: bạn có thể sử dụng LEFT JOIN với các bảng Phòng ban (trái) và Nhân viên (phải) để chọn tất cả các phòng ban, gồm những phòng ban không được gán nhân viên nào. Để chọn tất cả nhân viên, bao gồm những người không được gán cho phòng ban, bạn sẽ sử dụng RIGHT JOIN.

Ví dụ sau đây cho thấy cách bạn có thể liên kết các bảng Sản phẩm và Danh mục trên trường CategoryID. Truy vấn tạo ra một danh sách chứa tất cả các danh mục, gồm những danh mục không chứa sản phẩm:

SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

Trong ví dụ này, CategoryID là trường liên kết nhưng không được đưa vào kết quả truy vấn vì trường này không được đưa vào câu lệnh SELECT. Để bao gồm trường được nối, nhập tên trường vào câu lệnh SELECT — trong trường hợp này là Categories.CategoryID.

Ghi chú: 

Để tạo một truy vấn chỉ bao gồm những bản ghi có dữ liệu trong các trường được nối giống nhau, hãy sử dụng phép toán INNER JOIN.

  • Có thể lồng LEFT JOIN hoặc RIGHT JOIN vào INNER JOIN nhưng không thể lồng INNER JOIN vào LEFT JOIN hoặc RIGHT JOIN. Hãy xem mục về cách lồng trong chủ đề INNER JOIN để biết cách lồng các phép nối bên trong các phép nối khác.

  • Bạn có thể liên kết nhiều mệnh đề ON. Hãy xem phần thảo luận về liên kết mệnh đề trong chủ đề INNER JOIN để biết cách thực hiện thao tác này.

Nếu bạn tìm cách liên kết các trường chứa dữ liệu Bản ghi nhớ hoặc Đối tượng OLE thì sẽ xảy ra lỗi.



Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×