2012-07-25 100 views
1

我有一個非常簡單的MySQL查詢retun數據,連接兩個表:MySQL的加入兩個表和兩個表

SELECT teams.id, teams.name, players.id, players.name, players.teamId 
FROM teams 
LEFT JOIN players 
ON teams.id = players.zoneId 
WHERE teamId = 3 

當我再取行,我可以使用的數據是這樣的:

echo($row["name"] . ", " . $row["id"]); 

數組中包含的數據是玩家表中的數據。我怎樣才能訪問「團隊」表中的數據?

謝謝。

回答

6

對列名使用別名來區分隊列表和玩家表中具有相同名稱的列。

SELECT teams.id as team_id, teams.name as team_name, players.id, players.name, players.teamId 
FROM teams 
LEFT JOIN players 
ON teams.id = players.zoneId 
WHERE teamId = 3 

然後你可以用下面獲得的隊名和隊ID:

$row["team_name"] 
$row["team_id"] 

如果是我的話,我還會使用別名爲玩家區域(如player_id等)只是爲了使代碼儘可能清晰。清除代碼==更好的可維護性。

+1

+1第一個22秒:) – 2012-07-25 16:28:18

+1

感謝您的快速回答! – dotminic 2012-07-25 16:31:09