Từ khóa INNER JOIN trả về các hàng khi có ít nhất một kết quả phù hợp trong cả hai bảng.
Mệnh đề INNER JOIN trong MySQL
Mệnh đề MySQL INNER JOIN khớp các hàng trong một bảng với các hàng trong các bảng khác và cho phép bạn truy vấn các hàng có chứa các cột từ cả hai bảng.
Mệnh đề MySQL INNER JOIN là một phần tùy chọn của câu lệnh SELECT. Nó xuất hiện ngay sau mệnh đề FROM.
Trước khi sử dụng mệnh đề MySQL INNER JOIN, bạn phải chỉ định các tiêu chí sau:
Đầu tiên, bạn phải chỉ định bảng chính xuất hiện trong mệnh đề FROM, thứ hai, bạn cần chỉ định các bảng mà bạn muốn kết hợp với bảng chính, xuất hiện trong mệnh đề INNER JOIN. Về mặt lý thuyết, bạn có thể tham gia một bảng với nhiều bàn. Tuy nhiên, để có hiệu suất truy vấn tốt hơn, bạn nên giới hạn số lượng bảng để tham gia, thứ ba, bạn cần chỉ định điều kiện nối hoặc vị từ nối. Điều kiện nối xuất hiện sau từ khóa ON của mệnh đề INNER JOIN. Điều kiện nối là quy tắc để khớp các hàng giữa bảng chính và các bảng khác.
Ví dụ
SELECT c.cid, c.course_desc, user.name FROM AM_COURSE c
INNER JOIN AM_INTER inter on inter.cid = c.cid
INNER JOIN AM_USER user on user.uid = inter.uid
INNER JOIN AM_TIMETABLE tt ON inter.cid = tt.UserId
WHERE c.Name = 'coursename' AND tt.Date_Time BETWEEN '2011-08-12' AND '2012-08-12'