Обычно вы присоединяетесь к таблице team
дважды.
Предполагая следующую структуру таблицы:
table: "matches"
id_team_a
id_team_b
start_time
...
table: "teams"
id_team
name
Вы бы go:
select
m.*,
ta.name team_name_a,
tb.name team_name_b
from matches m
inner join teams ta on ta.id_team = m.id_team_a
inner join teams tb on tb.id_team = m.id_team_b
Если вы хотите обработать это с помощью поиска:
select
m.*,
case when ta.name = @myteam then ta.name else tb.name end search_name,
case when ta.name = @myteam then tb.name else ta.name end opponent_name
from matches m
inner join teams ta on ta.id_team = m.id_team_a
inner join teams tb on tb.id_team = m.id_team_b
where @myteam in (ta.name, tb.name)