我有三个表我正在尝试从中选择数据,每个表都有一个pID,这是我希望连接基于的。当我运行以下查询时,我仍然最终得到三个pID字段。
我的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
答案 0 :(得分: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;
鉴于您的编辑,这应该有效:
SELECT p.pID, p.Name, p.Age, a.`3pt%`, a.gamePoints, m.fouls, m.rebounds
...
请确保使用特殊字符在列周围添加反引号。