Получение двух элементов из одной таблицы в параметре SELECT - PullRequest
2 голосов
/ 17 апреля 2010

В операторе SQL SELECT мне нужно извлечь имя двух команд, взяв обе команды из одной таблицы. Например, ниже

SELECT sport_activity_id, (team A), (team B), date, time 
FROM sportactivity, teams 
WHERE competition_id_fk = 2

Для (команда A) и (команда B) у меня есть team_id, который является FK для таблицы 'команды'

Можно ли получить следующий результат из этих таблиц с помощью SQL? 1, Барселона, Арсенал, 01.01.2000, 20:00

две таблицы следующие:

Спортивность стола

sport_activity_id, home_team_fk, away_team_fk, competition_id_fk, date, time

(пример кортежа) -> 1, 33, 41, 5, 2010-04-14, 05: 40: 00

таблица команд

team_id, team_name

(пример кортежа) -> 1, Алжир

Ответы [ 2 ]

3 голосов
/ 17 апреля 2010

Да, вам просто нужно присоединиться к командам дважды:

SELECT sport_activity_id, T1.team_name, T2.team_name, date, time 
FROM sportactivity
JOIN teams T1 ON home_team_fk = T1.team_id
JOIN teams T2 ON away_team_fk = T2.team_id
WHERE competition_id_fk = 2
1 голос
/ 17 апреля 2010
SELECT sport_activity_id, teamA.team_Name, teamB.team_Name, date, time 
FROM sportactivity
INNER JOIN teams teamA ON sportactivity.home_team_fk = teamA.team_ID
INNER JOIN teams teamB ON sportactivity.away_team_fk = teamB.team_ID
WHERE competition_id_fk = 2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...