play_by_play
表我想连接到多个其他表,这样我就可以看到文本而不是id。play_by_play
表有 * 三 * 个不同的列,这些列使用来自另一个表的team_id
。
当我运行这个查询时,我没有得到任何结果。没有错误,只是没有结果。我在删除AND play_by_play.player3_team_id = team.team_id
时得到了一些结果,所以我确信有一个正确的方法。
SELECT
play_by_play.id,
play_by_play.game_id,
play_by_play.event_msg_action_type
FROM play_by_play
INNER JOIN event_message_type
ON play_by_play.event_msg_type_id = event_message_type.id
INNER JOIN game
ON game.game_id = play_by_play.game_id
INNER JOIN team
ON play_by_play.player1_team_id = team.team_id
AND play_by_play.player2_team_id = team.team_id
AND play_by_play.player3_team_id = team.team_id
LIMIT 500
任何理解SQL语法的资源都很感激。如何把这些片段按正确的顺序排列?
1条答案
按热度按时间zour9fqk1#
您应该使用表团队三次...内部加入团队团队1 ON play_by_play.player1_team_id = team1.team_id内部加入团队团队团队2 ON play_by_play.player2_team_id = team2.team_id内部加入团队团队团队3 AND play_by_play.player3_team_id = team3.team_id ...