MySQL连接两个表,并从两个表中返回数据


MySQL join two tables and retun data from both tables

我有一个非常简单的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"]);

数组中包含的数据是玩家表中的数据。如何访问"团队"表中的数据?

谢谢。

使用列名别名来区分团队表和球员表中具有相同名称的列。

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等),以使代码尽可能清晰。清除代码==更好的可维护性。