我有两个表:“玩家”和“游戏”。 玩家的主键是桌面游戏中的外键。
'player' --> PK = idPlayer
'game' --> FK = player_idPlayer
所以现在我想删除玩家表中的一名玩家。 SQL 语句还应删除游戏表中 idPlayer = player_idPlayer
的所有条目 - 如果有的话。
只有当玩家同时在两个表中时,我的语句才会删除。但当该玩家不在游戏 table 上时,我也想删除该玩家。
DELETE player, game
FROM players, game
WHERE idPlayer = player_idPlayer AND player_idPlayer = ?
最佳答案
您可以尝试使用左外连接
DELETE p, g
FROM players p
LEFT OUTER JOIN game g ON g.player_idPlayer = p.idPlayer
WHERE p.idPlayer = ?
关于mysql - SQL从两个表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30380894/