`
junlas
  • 浏览: 64346 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

多表删除的使用

阅读更多
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以上
分享到:
评论

相关推荐

    Oracle中多表关联批量插入批量更新与批量删除操作

    在Oracle数据库中,进行多表关联的批量插入、批量更新和批量删除操作是常见的数据库管理任务,尤其是在处理大量数据时,这些操作能显著提高效率并减少资源消耗。本文将详细探讨这三个方面,并通过实例代码来展示如何...

    操作多线程删除数据库表,以及控制listbox多线程呈现

    在多线程环境下,删除表前应确保没有其他线程正在使用该表,这可以通过锁定或者事务来实现。删除表的SQL语句通常是`DROP TABLE [TableName]`,但请谨慎使用,因为它将永久删除数据。 4. **UI更新**:在Windows ...

    mysql delete 多表连接删除功能

    - 在执行多表删除操作前,务必确保理解其影响,因为这可能会破坏数据一致性。 - 总是在执行删除操作前备份重要数据,以防不测。 - 如果有外键约束,删除操作可能会被阻止,除非先禁用约束或使用`CASCADE`选项来删除...

    mysql 一条语句删除多表数据

    总的来说,"mysql 一条语句删除多表" 是一种高级的数据库操作技巧,它可以显著提升删除关联数据的效率,但也需要谨慎使用,以免误删重要数据。在实际应用中,结合事务处理、备份策略以及良好的数据库设计,可以确保...

    oracle删除用户下所有表

    在进行表删除之前,首先要明确一点:这里提到的操作是针对非系统用户(如 HR、SCOTT 等)的表进行删除,而不是对数据库中的系统表进行操作。系统表是由 Oracle 数据库本身使用的表,它们存储了数据库的元数据等重要...

    如何正确的删除Oracle表空间数据文件

    在Oracle数据库管理中,删除表空间数据文件是一项关键操作,涉及到数据的安全性和系统的稳定性。本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据...

    快捷删除hive表的工具

    2. **自定义删除键**:该工具还支持根据表中的一个或多个字段作为键来批量删除表。这种灵活性使得用户可以根据业务需求定制删除策略,例如,如果某个字段标识了数据的过期时间,用户可以通过该字段快速清理旧数据。 ...

    SqlServer删除所有表数据语句

    Sql Server 删除所有表数据语句 ...使用 Sql Server 删除所有表数据语句可以快速地删除当前数据库中的所有表数据,而保持表结构不变。同时,我们也可以使用排序规则来确定数据如何排序、比较和存储。

    顺序表的删除

    顺序表删除操作的时间复杂度: - 最好情况:如果我们知道要删除的元素恰好是数组的最后一个元素,那么删除操作只需O(1)的时间,因为不需要移动其他元素。 - 平均情况:在平均情况下,删除操作需要移动数组中大约一半...

    hashtab2_C语言_哈希表删除、添加、寻找_codeblocks_

    哈希表是一种高效的数据结构,它通过特定的函数(哈希函数)将数据映射到一个固定大小的数组中,以此实现快速的查找、插入和删除操作。在C语言中,我们可以手动构建哈希表来处理这些操作。Code::Blocks是一款流行的...

    asp使用SQL语句的Delete命令删除数据库表中的一个记录[参照].pdf

    asp 使用 SQL 语句的 Delete 命令删除数据库表中的一个记录 在软件开发中,删除数据库表中的一个记录是非常常见的操作。今天,我们将学习使用 asp 和 SQL 语句来删除数据库表中的一个记录。 删除记录的查询语句 ...

    oracle快速删除表空间

    在管理Oracle数据库时,有时需要删除不再使用的表空间,以释放磁盘空间或优化数据库结构。本篇文章将详细介绍如何在Oracle数据库中快速删除表空间,以及相关的重要知识点。 首先,理解表空间在Oracle中的角色至关...

    oracle定时删除表空间的数据并释放表空间

    1. **Oracle 表空间(Tablespaces)**:表空间是Oracle数据库中存储数据的基本单位,它由一个或多个数据文件组成。每个表、索引和其他对象都会被分配到特定的表空间中。理解表空间的工作原理对于管理数据库空间至关...

    查找删除 顺序表

    本文将详细介绍顺序表的查找和删除操作,并提供了一个使用C++编写的示例代码。 顺序表的定义 顺序表是一种线性表,元素之间是连续的,各个元素的存储地址是连续的。顺序表的每个元素都有其唯一的索引值,索引值是从...

    MyBatis的项目。实现增删改查,以及多表联查和对标签的使用。批量删除。

    在本项目中,我们将深入探讨MyBatis如何实现增删改查(CRUD)操作,多表联查,以及标签(Tags)的使用,并涵盖批量删除的功能。以下是关于这些主题的详细讲解。 1. **增删改查(CRUD)操作**: - **创建(Create)...

    Oracle删除表、字段之前判断表、字段是否存在

    在Oracle中若删除一个不存在的表,如 “DROP TABLE tableName”,则会提示: ORA-00942:表或视图不存在 若在程序中执行该语句则会报异常,这就需要我们在删除表前先判断该表是否存在,若存在则删除. DECLARE num NUMBER;...

    DB2恢复删除表学习

    2. **修改现有表空间**:对于已经存在的表空间,可以使用`ALTE TABLESPACE`命令来关闭已删除表的恢复功能。 ```sql ALTE TABLESPACE my_tablespace SET DROPPEDTABLERECOVERY OFF; ``` #### 三、影响与限制 -...

    Oracle删除表中的重复数据

    通过`ROWNUM`函数和子查询的方式,进一步保证了即使有多条记录在上述列上完全相同,也只会有一条被插入到临时表中。 3. **删除原表并重命名临时表**:最后,通过`DROP TABLE tlinkman;`和`ALTER TABLE tlinkman2 ...

    Oracle表删除大量数据(千万)后查询变慢问题(原因分析)

    Oracle 表删除大量数据后查询变慢问题分析 在 Oracle 数据库中,如果删除了大量数据(千万级别),可能会出现查询变慢的问题。下面我们将分析这个问题的原因,并提供解决方案。 问题的原因主要有两个方面: 1. 表...

Global site tag (gtag.js) - Google Analytics