2013-09-01 2 views
-2

Если вы хотите уменьшить это, пожалуйста, по крайней мере, объясните причину.Подставляя значения из одной таблицы в другую

Прошу прощения, если ответ на мой вопрос уже здесь, проблема заключается в том, что я новичок в SQL и не знаю, что искать, что затрудняет поиск ответы на google или SE.

Я быстро опишу, что я пытаюсь сделать.

У меня есть главный стол, давайте назовите его мастер, который отслеживает выступления команд.

У меня есть другая таблица под названием команд, которая имеет две колонки, название команды и аббревиатуру из трех букв (TLA) для команды. Аббревиатура из трех букв уникальна для каждой команды.

В основной таблице команды хранятся в качестве их TLA для простоты и обеспечивают аккуратность и компактность стола.


Мой вопрос заключается в следующем:

Как я могу получить базу данных, чтобы вернуть полное имя команды, когда речь идет по аббревиатуре каждый раз в мастер таблицы?

Использование

WHERE master.team1=teams.teamid; 

ли заменить имена, но для каждой записи в мастер У меня есть 2 команды (TEAM1, team2).

Я хочу, чтобы иметь возможность возвращать всю строку обеими командами в их полных именах и любую другую информацию, которую я хотел бы извлечь из этой строки.


Опять же, я извиняюсь, если это не делает много смысла, я новичок в MySQL, и я не зная, что путь к слову мой вопрос/искать ответы.

Большое спасибо заблаговременно и получите хорошее воскресенье y'all.

ответ

2

Вы должны JOIN к столу команд в два раза, что-то вроде:

SELECT m.*,t1.team_name,t2.team_name 
FROM master m 
JOIN teams t1 
    ON m.team1 = t1.TLA 
JOIN teams t2 
    ON m.team2 = t2.TLA 
+0

Спасибо, я буду дать этому идти. Я не знал, что такое JOIN, но теперь можно найти синтаксис и попытаться это выработать. –

+0

Мне удалось получить это, чтобы отобразить полные имена команд (спасибо), однако столбцы team1 и team2 все еще присутствуют из моей главной таблицы. Можно ли их разбить? Еще раз спасибо и жаль за то, что вы новичок. –

+0

Вместо 'm. *' Выберите только те поля, которые вы хотите вернуть из своей таблицы. т.е.: 'm.this, m.that, m.otherthing' –

Смежные вопросы