Как объединить две таблицы в соответствии с отношением в третьей таблице?

Предположим, есть 3 таблицы:

ученик

учитель

консультант

У ученика есть столбцы с именами и идентификаторами, у учителя также есть столбцы с именами и идентификаторами, а у учителя s_id(обозначает идентификатор студента) и t_id (обозначает идентификатор учителя). s_id ссылки на id в таблице учеников и t_id ссылки на id в таблице учителей. Как я могу объединить имя студента с именем его советника? Спасибо за любую помощь.

2 ответа

Просто создайте идентификатор супервизора в таблице учеников, чтобы объединить супервизора с его учениками и использовать оператор объединения

Вы можете использовать объединение для объединения таблиц.

Попробуй это:

select b.name,c.name from advisor a
join student b on a.s_id = b.id
join teacher c on a.t_id = c.id
where a.s_id = 1

Обратите внимание, что a, b и c являются псевдонимами.

Другие вопросы по тегам