2013-06-19 4 views
0

У меня есть три таблицы, в которых я пытаюсь выбрать данные, каждая таблица имеет идентификатор pID, на котором я хочу, чтобы соединение было основано. Когда я запускаю следующий запрос, у меня все еще есть три поля PID.Выберите объединение нескольких таблиц в mysql?

Что не так с моей командой select join?

SELECT * FROM Player p 
    LEFT JOIN AvgStats a ON a.pID = p.pID 
    LEFT JOIN MisTotal m ON m.pID = p.pID; 

Player Table 
pID | Name | Age 

AvgStats Table 
pID | 3pt% | gamePoints 

MisTotal Table 
pID | Fouls | rebounds 

Я хочу таблицу создающих, которая возвращает

pID | Name | Age | 3pt% | gamePoints | Fouls | rebounds 
+3

Не используйте 'select *', перечислите столбцы, которые вы хотите вернуть. – Taryn

+0

Я хочу выбрать все столбцы, будет ли проект на всех из них быстрее, чем *? – LF4

+4

Если вы выберете '', то вы получите три столбца с именем 'pId'. Фактически называя столбцы, вы будете возвращать только те столбцы, которые вы хотите, без дубликатов. Вы должны называть столбцы «select p.pid, p.name, p.age, a.3pt% и т. Д. – Taryn

ответ

4

Если я понять ваш вопрос правильно, просто удалите * из вашего запроса и указать область (ы) вы хотите - в этом случай, p.pID:

SELECT p.pId FROM Player p 
    JOIN AvgStats a ON a.pID = p.pID 
    JOIN MisTotal m ON m.pID = p.pID; 

Учитывая внесенные изменения, это должно чюо rk:

SELECT p.pID, p.Name, p.Age, a.`3pt%`, a.gamePoints, m.fouls, m.rebounds 
... 

Просто убедитесь, что вы включаете обратные элементы вокруг столбца со специальным символом.

+0

Извините, я не хочу только поле PID, я 'm пытается создать большую таблицу из всех трех таблиц, где они соединены полем PID. Я добавлю пример того, что я ожидаю в качестве вывода. – LF4

+0

@ LF4 - можете ли вы предоставить образцы? Не уверен, что правильно понимаю ваши требования. – sgeddes

+0

Я просто обновил вопрос тремя короткими столами и тем, что я пытаюсь создать с помощью соединений. Теперь, когда я думаю об этом, возможно, я собираюсь присоединиться к объединению? – LF4

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