在MySQL服務器中刪除,我有3個表被叫用戶的事情,thingfile刪除時,從表中基於2場條件
user uid, username, name, location, version thing thingid, username,, version thingfile thingid, code, version
每個用戶都有很多事情,每一件事情都有許多thingfiles 。
我會從用戶表中刪除象下面這樣:
delete FROM user a WHERE a.username NOT IN (
SELECT b.by_user
FROM bp_userlist b)
and a.version="823"
更新時間: 前刪除: 用戶:
uid username name location version
1 abc abc abcdd O
2 abc abc abcdd 823
3 ddd ddd dddd 823
thing
thingid username version
1 abc O
2 abc O
1 abc 823
2 abc 823
3 ddd 823
1 ddd 823
thingfile
thingid code version
1 ee O
2 eed O
1 ee 823
2 eddd 823
3 fff 823
後刪除: 用戶:
uid username name location version
1 abc abc abcdd O
3 ddd ddd dddd 823
thing
thingid username version
1 abc O
2 abc O
3 ddd 823
1 ddd 823
thingfile
thingid code version
1 ee O
2 eed O
3 fff 823
我想要那些屬於thingi的記錄東西和東西文件表中的東西也會被刪除。是否有可能沒有外鍵約束?我有超過10個表和許多連接不能在一個查詢中工作。
請分享您想要獲得的輸出以及您已經嘗試過的輸出。 –
如果沒有外鍵約束,則必須包含兩個更多的查詢才能從這兩個表中刪除。否則,您如何期望MySQL知道要刪除哪些行,而不必以某種方式定義關係? –
@RacilHilan我可以根據需要添加儘可能多的查詢!沒有添加外鍵約束 – MT467