我有一个非常简单的sqlite篮球运动员/辅助模型:
ID,名称和team_id的玩家表
ID,player_id和to_id的辅助表
其中player_id是指辅助球员,并且to_id字段表示辅助的接收者。
现在,我在使用裸露的SQL方面表现很差。我能够通过以下方式检索所有帮助
SELECT players.name, teams.name, assists.to_id
FROM players
JOIN teams
on players.team_id = teams.id
JOIN assists
on assists.player_id = players.id
并给出了辅助球员的名字,球队的名字和接受者的身份证(例如:科比·布莱恩特,洛杉矶湖人,342)。要添加收件人姓名而不是裸名,我需要添加什么?它来自相同的玩家表。
最佳答案
应该这样做:
SELECT p.name, t.name, a.to_id, p2.name
FROM players p
JOIN teams t on p.team_id = t.id
JOIN assists a on a.player_id = p.id
LEFT JOIN players p2 on a.to_id = p2.id
关于sql - 三重加入sqlite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43049149/