簡體   English   中英

從兩個表中刪除SQL

[英]SQL Delete from two tables

我有兩個表:“玩家”和“游戲”。 玩家的主鍵是桌面游戲中的外鍵。

'player' --> PK = idPlayer
'game'   --> FK = player_idPlayer

所以現在我想在玩家表中刪除一個玩家。 SQL語句還應該刪除游戲表中的所有條目,其中idPlayer = player_idPlayer如果有的話。

僅當播放器在兩個表中時,我的語句才會刪除。 但是當這個玩家不在游戲桌中時,我也想刪除該玩家。

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 = ?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM