Có thể thực hiện được mẹo nhỏ này (THAM GIA NGOÀI TRỜI trên bảng nhiều-nhiều, với ràng buộc rằng ID nhóm phải là 3 (đối với Phim truyền hình)
http://sqlfiddle.com/#!9/01cf3/1
SELECT elements.ID, elements.Element, groups.Genre
FROM elements
LEFT OUTER JOIN group_elements
ON elements.ID = group_elements.ElementID
AND group_elements.GroupID = 3
LEFT OUTER JOIN groups
ON group_elements.GroupID = groups.ID
LEFT OUTER JOIN
có nghĩa là:lấy tất cả các dòng từ các bảng trước đó (những dòng nằm ở phía bên trái của LEFT OUTER JOIN
, nếu bạn muốn), ngay cả khi không có dòng nào tương ứng với chúng trong các bảng sau. Điều kiện ON elements.ID = group_elements.ElementID AND group_elements.GroupID = 3
nói rằng nếu chúng tôi tìm thấy bất kỳ thứ gì phù hợp với ElementID của mình, thì đó cũng phải là một bộ phim truyền hình (GroupID =3). Sau đó, chúng tôi thực hiện một THAM GIA TRÁI TRÁI trên bảng nhóm, cho phép chúng tôi hiển thị cột Thể loại hoặc NULL nếu phần tử không phải là phim truyền hình.