mysql多表关联删除
原创Toryci 最后发布于2019-07-09 23:52:07 阅读数 577 收藏
展开
现有三张表table_a、table_b、table_c ,三张表的关联关系为:table_a表name字段关联table_b表name字段,table_a表的number字段关联table_c表的number字段。SQL命令如下:
DELETE
table_a,
table_b,
table_c
FROM
table_b
LEFT JOIN table_a
ON table_b.`name` = table_a.`name`
LEFT JOIN table_c
ON table_a.`number` = table_c.`number`
WHERE table_b.name = '李四'
多表关联删除时,需要注意表的关联顺序,同时,注意使用的左连接( LEFT JOIN),切记不能用内连接( INNER JOIN),原因是:如果使用内连接时,只能在三张表都存在数据情况下删除成功,若table_a,table_c表数据不存在则会失败!
————————————————
参考:https://blog.csdn.net/cnd2449294059/article/details/95256497