原文链接
DELETE删除多表数据,怎样才能同时删除多个关联表的数据呢?这里做了深入的解释:

1    delete from t1 where 条件
2    delete t1 from t1 where 条件
3    delete t1 from t1,t2 where 条件
4    delete t1,t2 from t1,t2 where 条件

前 3者是可行的,第4者不可行。
也就是简单用delete语句无法进行多表删除数据操作,不过可以建立级联删除,在两个表之间建立级联删除关系,则可以实现删除一个表的数据时,同时删除另一个表中相关的数据。

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、从数据表t1里在数据表t2里没有匹配的记录查找出来并删除掉(只删除一个表中的数据)

DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL

DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL

3、 从两个表中找出相同记录的数据并把两个表中的数据都删除掉

DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25

注意此处的delete t1,t2 from 中的t1,t2不能是别名

如:

delete t1,t2 from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25

在数据里面执行是错误的(MYSQL 版本不小于5.0在5.0中是可以的)

上述语句改 写成

delete table_name,table2_name from table_name as t1 left join table2_name as t2 on t1.id=t2.id where table_name.id=25

在数据里面执行是错误的(MYSQL 版本小于5.0在5.0中是可以的)

delete 多表删除的使用(连表删除)相关推荐

  1. delete表1条件是另一个表中的数据,多表连接删除(转)

    DELETE删除多表数据,怎样才能同时删除多个关联表的数据呢?这里做了深入的解释: 1. delete from t1 where 条件 2.delete t1 from t1 where 条件 3. ...

  2. delete表1条件是另一个表中的数据,多表连接删除

    2019独角兽企业重金招聘Python工程师标准>>> 数据库中有两张表. DELETE cdb_posts,cdb_threads FROM cdb_posts ,cdb_thre ...

  3. Mysql定义DELETE操作触发器,将删除数据存入历史表

    Mysql定义DELETE操作触发器,将删除数据存入历史表 SQL如下: // An highlighted blockDELIMITER $$ CREATE TRIGGER <触发器名称> ...

  4. oracle中删除yuj_oracle中可以使用drop、delete和truncate三个命令来删除数据库中的表...

    oracle中经常用到的删除语句主要有三种,分别是delete,truncate,drop. 1. delete和truncate都是删除表中的内容而不能删除表的结构,而drop则是删除表的结构和内容 ...

  5. hive创建mysql表,hiveMysql创建、修改、删除字段/表

    本文围绕以下框架,对Hive及Mysql中,常用的字段/表处理语句进行整理汇总. 1. 创建表 (1)Hive (2)Mysql 2. 字段重命名 (1)Hive -- 改变列名/类型/位置/注释 A ...

  6. oracle如何查看表的字段是否存在,Oracle删除表、字段之前判断表、字段是否存在...

    Oracle删除表.字段之前判断表.字段是否存在 在Oracle中若删除一个不存在的表,如 "DROP TABLE tableName",则会提示: ORA-00942:表或视图不 ...

  7. db2 删除schema中所有表_常用SQL系列之(六):删除方式、数据库、表及索引元信息查询等...

    本系统为@牛旦教育IT课堂在微头条上的内容, 为便于查阅,特辑录于此,都是常用SQL基本用法.. 前两篇连接: (一):SQL点滴(查询篇):数据库基础查询案例实战 (二):SQL点滴(排序篇):数据 ...

  8. php删除数据库中数据表的数据,php中删除数据库数据例子

    php除了删除文件目录不用用到mysql中的delete之外只要删除mysql数据库中的数据都要用到数据库的命令了,下面我看利用delete来删除数据的例子. sql有许多对数据库操作的语句.但是常见 ...

  9. 删除所有奇数顺序表c语言,怎么将一个线性表(顺序表)拆分成两个奇偶表(C语言)?...

    如何将线性表A拆分成线性表A和B,使得A存放奇数,B存放偶数? 1.基础函数 1.1 get取函数 int get(nod *la,int i) { return la->data[i]; } ...

  10. 表的插入、更新、删除、合并操作_19_通过表关联删除记录

    通过表关联删除记录 需求描述 需求:删除dept表里deptno和temp相同的记录,但数据不可再恢复. 解决方法:这里通过DELETE FROM tableNAME A JOIN tableName ...

最新文章

  1. java date truncate_在Java中将dateTime转换为dd / mm / yy格式的日期
  2. 关于物理像素/逻辑像素
  3. eWebEditor 错误 (不支持 ie7 ie8 maxthon 及其它浏览器)终极办法
  4. Python基础教程:自定义函数
  5. Bash shell 学习笔记六
  6. Android 封装handler,android封装工作线程跟Handler工具类
  7. C# 反射 (Reflect)
  8. std::atomic和std::mutex区别
  9. 使用Fastjson提示No serializer found for class
  10. 借力信息化工具,助跑精细化管理
  11. 【FLink】cannot assign instance LinkedMap FlinkKafkaConsumerBase.pendingOffsetsToCommit
  12. mysql和mysqli的区别
  13. 斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
  14. Python Tricks(十三)—— 欧几里得算法
  15. Docker容器实现原理及容器隔离性踩坑介绍
  16. 断网情况下,前端页面处理
  17. 关于内存泄漏检测问题,和大家一起分享
  18. php有意思的小程序,这应该是迄今为止最全的小程序Top 100 榜单了,php中文网诚意奉上...
  19. CSS+HTML开发者手册 中文参考手册合集
  20. 数学主题分类 - 中文(上)

热门文章

  1. 【油猴脚本】生成纯元素CSS选择器(附开发笔记)
  2. 登录亚马逊显示内部服务器出错,亚马逊后台登录提示密码错误有哪些原因?哪些操作会导致账号封号 ......
  3. 原神3.2服务端架设服务器搭建教程ubuntu系统(保姆级)
  4. C语言学习笔记Day3——持续更新中... ...
  5. java概率抽奖工具类,直接使用
  6. 坦克大战JAVA版(全码)
  7. 计算机组成原理加法器实验,计算机组成原理加法器实验
  8. servicecontroller 无法打开计算机 服务,从我的WPF c#启动Window服务给出“无法在计算机上打开SERVICENAME服务。”。...
  9. 【东北/西工/中山/厦大/东南/中农】公布复试分数线!【34所自划线】
  10. GNSS主要构成是各个全球卫星导航系统分类,全球,区域,增强类型