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中是可以的)

附:上述语句运行的环境 MYSQL 4.0.2以上

转载于:https://www.cnblogs.com/China-Dragon/archive/2009/03/20/1417256.html

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

  1. delete 多表删除的使用(连表删除)

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

  2. mysql delete 表关联删除数据_mysql delete 多表连接删除功能

    单个表的删除: DELETE FROM tableName WHERE columnName = value; 删除表内的所有行: 即:保留表的结构.属性.索引 DELETE FROM tablena ...

  3. MySql delete多表关联删除的使用方法

    #假设条件 假设有三张表a,b,c,三张表之间有关联关系,在删除一张表中的一行数据的时候需要同时删除其他表中的对应的数据,或是删除表中的数据需要通过另外的表中的条件才能知道,这时候如何能有sql语句快 ...

  4. 面试题: 数据库:delete和trancate删除表记录的区别

    delete和trancate删除表记录的区别 首先说相同点,就是他们都能删除表中的数据,区别有两点: 1: delete语句在删除记录的时候可以有选择的删除某些数据(使用where子句),当然,如果 ...

  5. SQL Delete 语句(删除表中的记录)

    SQL DELETE 语句 DELETE语句用于删除表中现有记录. SQL DELETE 语法 DELETE FROM table_name WHERE condition;   请注意 删除表格中的 ...

  6. php zpo框架,Yii使用DeleteAll连表删除出现报错问题的解决方法

    本文实例讲述了Yii使用DeleteAll连表删除出现报错问题的解决方法.分享给大家供大家参考,具体如下: 删除数据的时候,经常会遇到连联判断删除数据的条件,今天用Yii 的CDbCriteria生成 ...

  7. delete from表名和truncate table 表名的区别

    删除过程: delete: 表中记录⼀条⼀条删除, auto_increment 计数不会重置为1; 新记录添加时在原有 计数基础上+1 truncate: 直接将表删除,重新创建新表, auto_i ...

  8. Oracle入门(十二D)之表删除与删除表数据

    一.删除表 drop table 表名; drop table t_userinfo; 二.删除表数据 (1)DML操作delete delete from 表名; (2)DDL操作truncate ...

  9. 使用T-SQL语句操作数据表-删除数据

    1.使用 delete 语句删除表中的数据: 语法: delete from <表名> [where <删除条件>] delete 是删除的意思 where是选填内容可以不加, ...

最新文章

  1. 如何将非官方扩展程序加入chrome的白名单
  2. mysql倍增表的内容_MySQL入门(7)——表数据的增、删、改
  3. C#:向C++封送结构体数组
  4. Java面向对象(16)--单例(Singleton)设计模式
  5. RedisTemplate和StringRedisTemplate使用
  6. 一文看懂Java虚拟机——JVM基础概念整理
  7. 集群间动态扩展和删除hdfs的datanode和hbase的regionserver
  8. dex2jar 和 jd-gui
  9. 福昕编辑器打开pdf自动打印
  10. 远程桌面连接计算机下拉记录清除,如何清除“远程桌面连接”中的历史记录
  11. 输入输出系统 ——I/O方式(程序查询、程序中断、DMA方式)
  12. k8s设计-多容器pod设计模式
  13. Ng-Alain 菜单图标引入iconfront 版本9.5.5
  14. 协同办公考勤管理系统php,协同办公考勤管理系统完整源码 超级给力UI 适用于中小型企业的办公考勤管理系统...
  15. html项目符号正方形,HTML无序列表| HTML项目符号列表
  16. 7-108 三角形判断
  17. 千兆以太网TCP协议的FPGA实现。
  18. 多行文本超过一定行数后显示展开功能
  19. 智商捉急人士求金融数学与matlab相关指导
  20. C++STL面试详解

热门文章

  1. 可降阶的高阶微分方程
  2. 猫狗识别——PyTorch
  3. Python实现微信消息防撤回
  4. jQuery的Ajax初识
  5. 14-jQuery补充
  6. Learning React Native笔记
  7. android 简易定时器
  8. Linux 线程实现机制分析
  9. const pointer
  10. UA SIE545 优化理论基础1 凸分析8 极点与极方向