兩張表關聯刪除:
delete a,b from table1 a
inner
join table2 b
on a.id = b.aid
where a.id = '1'
//或者也可以
delete a,b from table1 a,table2 b
where a.id = b.aid
and a.id = '1'
三張表刪除
delete a,b,c from table1 a
inner
join table2 b
on a.id = b.aid
inner
join table3 c
on a.id = c.aid
where a.id = '1'
不過這樣有乙個問題,就是如果a表裡資料,而b表或者c表裡沒資料,那麼整個刪除就失敗,即刪除0條資料
如果你的主表一定有資料,而關聯的表有可能有資料也有可能沒資料的話,我們可以通過左連線刪除的方式,把兩張表都刪除。無論關聯的表有沒有資料,主表都可以刪除成功
delete a.* ,b.* ,c.*
from table1 a
left
join table2 b
on a.id = b.aid
left
join table3 c
on a.id = c.aid
where a.id = 1
mysql 多表關聯刪除
sql檔案 set foreign key checks 0 table structure for stu tea drop table ifexists stu tea create table stu tea stu id int 11 not null,tea id int 11 not n...
Mysql 多表關聯修改與刪除
資料庫表設計過程中,會把關鍵的字段 一列或多列 提取出來,建立多個維度的資訊表,供業務功能使用。假如我們在需要在a維度表中的滿足非關鍵字段部分條件欄位的記錄,需要在b維度表中修改列值,我們就會使用到多表關聯update。使用方式 update tablea a 直接left join 關聯表 還有表...
mysql 資料庫 多表關聯刪除
1 從資料表t1中把那些id值在資料表t2裡有匹配的記錄全刪除掉 delete t1 from t1,t2 where t1.id t2.id 或delete from t1 using t1,t2 where t1.id t2.id 2 從兩個表中找出相同記錄的資料並把兩個表中的資料都刪除掉 de...