mysql如今的版本也支持跨表删除
可以利用一条mysql语句删除多张表的记录,也可以利用表之间的关系删除多张表的记录。
现在有三张表,分别为bl_title,bl_contents,bl_comments
bl_title存在文章的标题,bl_contens存在文章的内容,bl_comments存在文章的评论
第一种跨表删除的方式是不用join,在delete时指定用半角逗号分隔多个表来删除,如下sql语句:
DELETE t.*, c.*,cm.**
FROM bl_title t,bl_contents c,bl_comments cm
WHERE t.tid = c.tid=cm.tid
AND t.tid=75;
第二种方式使用join操作,同样删除tid为75的数据,如下sql语句:
delete t.*
from bl_title t left join bl_contents c on t.tid=c.tid left join bl_comments cm on t.tid=cm.tid
where t.tid=75;