我认为ID
从表schedule
只是一个auto_increment
柱并加入schedule
从office_hours
是office_hours.schedule_id = schedule.semester_id
的正确方法。
select *
from schedule
inner join semester
on schedule.semester_id = semester.id
inner join office_hours
on office_hours.schedule_id = schedule.semester_id
UPDATE 1
select *
from schedule
inner join semester
on schedule.semester_id = semester.id
inner join office_hours
on office_hours.schedule_id = schedule.semester_id
INNER JOIN faculty
ON faculty.id = office_hours.faculty_id
INNER JOIN Section
ON Section.faculty_ID = faculty.id AND
Section.Schedule_ID = Schedule.ID
INNER JOIN class
ON Class.ID = Section.Class_ID
INNER JOIN major_class_br
ON major_class_br.class_ID = Class.ID
INNER JOIN major_minor
ON major_class_br.major_minor_id = major_minor.ID
假定所有ID
或联列存在于这就是为什么使用INNER JOIN
每个表。否则,请使用LEFT JOIN
。
看看定义的外键(假设当然认为包括他们的设计师.. ) –