在我的MySQL数据库中,我有一个包含PK id_duel
的主表和另一个包含PK id_duel_player
的表和两个FK的id_player
和id_duel
。
对于每id_duel
我有两个具有相同id_duel
的玩家(两个玩家进行一场决斗)。
我想建立这样的声明:给我这两个玩家(id_duel
和$id_player1
组成的决斗($id_player2
) - 这是参与所需的两个不同玩家的id_player决斗)
任何人都可以用SQL语句帮助我吗?
答案 0 :(得分:1)
您应该可以使用JOIN
来确保两个玩家具有相同的id_duel
:
SELECT id_duel
FROM duels d
INNER JOIN duel_player dp1
ON d.id_duel = dp1.id_duel
AND dp1.id_player = @id_player1
INNER JOIN duel_player dp2
ON d.id_duel = dp2.id_duel
AND dp2.id_player = @id_player2