MySQL中怎么删除多表数据,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
MySQL删除多表数据有哪些问题
1、deletefromt1where条件
2、deletet1fromt1where条件
3、deletet1fromt1,t2where条件
4、deletet1,t2fromt1,t2where条件
前3者是可行的,第4者不可行。
也就是简单用delete语句无法进行多表删除数据操作,不过可以建立级联删除,在两个表之间建立级联删除关系,则可以实现删除一个表的数据时,同时删除另一个表中相关的数据。
MySQL删除多表数据有哪些问题
1、从数据表t1中把那些id值在数据表t2里有匹配的记录全删除掉
DELETEt1FROMt1,t2WHEREt1.id=t2.id或DELETEFROMt1USINGt1,t2WHEREt1.id=t2.id
2、从数据表t1里在数据表t2里没有匹配的记录查找出来并删除掉
DELETEt1FROMt1LEFTJOINT2ONt1.id=t2.idWHEREt2.idISNULL或
DELETEFROMt1,USINGt1LEFTJOINT2ONt1.id=t2.idWHEREt2.idISNULL
3、从两个表中找出相同记录的数据并把两个表中的数据都删除掉
DELETEt1,t2fromt1LEFTJOINt2ONt1.id=t2.idWHEREt1.id=25
注意此处的deletet1,t2from中的t1,t2不能是别名
如:deletet1,t2fromtable_nameast1leftjointable2_nameast2ont1.id=t2.idwheretable_name.id=25在数据里面执行是错误的(MYSQL版本不小于5.0在5.0中是可以的)
上述语句改写成
deletetable_name,table2_namefromtable_nameast1leftjointable2_nameast2ont1.id=t2.idwheretable_name.id=25在数据里面执行是错误的(MYSQL版本小于5.0在5.0中是可以的)。
关于MySQL中怎么删除多表数据问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。