Toho lze dosáhnout pomocí několika jednoduchých spojení.
Za předpokladu, že chcete najít všechny studenty spojené s určitým učitelem, měli byste začít tím, že chytnete řádek pro teacher
. Poté se zapojíte do classes
že učitel učí. Nakonec byste se přidali ke students
které jsou v těchto třídách.
Toto je známé jako vztah many-to-many a je to důležitý koncept v databázích.
select
t.student_name, -- I suspect this col might actually be named teacher_name
s.student_name,
from
-- Find the classes that a teacher teaches
teacher_table t join class_table c on (t.class_id=c.class_id)
-- Find the students in those classes
join student_table s on (s.class_id=c.class_id)
where
t.student_id = ? -- Again, I suspect this should be "teacher_id"