我有一個MYSQL問題,它只能通過使用內部連接來解決,而我不是那麼擅長,我有四個表。在有條件語句的多表上使用左連接
表1:教室 classroomID,姓名,.......
表2:教師 FNAME,MNAME,L-NAME,.......
表3:受檢 subjectID,名稱,classroom_id,.....
表4 Teachers_subjects teacher_id和subject_id
我希望有一個查詢來獲取我所有的類名(classrooms.name)及其所有科目名稱(subjects.name) 其中subjects.classroom_id = classrooms.classroomID
我也想獲取教師姓名(teachers.name)其中Teachers_subjects.subject_id = subject.subjectID 和Teachers_subjects.teacher_id = teachers.teacherID。
我目前使用此查詢:
SELECT classrooms.name, subjects.name,
concat(teachers.fname,' ',teachers.mname,' ',teachers.lname) as Teachers_name
FROM classrooms, subjects, teachers, teachers_subjects
WHERE
subjects.classroom_id=classrooms.classroomID
AND
teachers_subjects.teacher_id=teachers.teacherID
AND
teachers_subjects.subject_id=subjects.subjectID
我得到我想要什麼,但我想即使它不是在桌子上teachers_subjects所有類及其相應的科目。這是列出所有班級及其科目,即使該科目沒有分配給任何教師。
感謝
jezzz!我需要去學習這個東西,謝謝@astander它的作品 – user2666633