Я работаю над базой данных, созданной для спортивных игр.Условный выбор значений полей
Я одну таблицу под названием игра:
-----------------------------
winner | team_id1 | team_id2
-----------------------------
У меня есть таблица команды
----------
id | title
----------
если winner = 1
, team_id1
является id
команды победителя
если winner = 2
, team_id2
- id
команды победителя
В конце концов, я хочу, чтобы в каждой игре вы получили титул победившей команды, за которым последовало название команды проигравших.
Он пытался что-то вроде:
select tea1.title, tea2.title
from games gam
join teams tea1 on case
when gam.winner = 1 and gam.team1_id = tea1.id then 1
when gam.winner = 2 and gam.team2_id = tea1.id then 1
else 0
end = 1
join teams tea2 on case
when gam.winner = 2 and gam.team1_id = tea2.id then 1
when gam.winner = 1 and gam.team2_id = tea2.id then 1
else 0
end = 1
но запрос виснет, я не понимаю, почему.