1.like与 in批量删除指定记录

like语法

like主要是用来模糊查询了

sql = "delete from A where field like '%ABC%'" 这个可用于字符与数字

in 语法

sql = "delete from A where field id(1,2,3)"  这个只能用在数字

关联删除

delete B from B

where exists (select 1 from A where B.accountid=A.accountid);

上面两条方法如果删除100W级别的数据库估计是没什么问题,如果是1000W估计就不行了

假设有一个表(syslogs)有1000万条记录,需要在业务不停止的情况下删除其中statusid=1的所有记录,差不多有600万条, 直接执行 DELETE FROM syslogs WHERE statusid=1

会发现删除失败,因为lock wait timeout exceed的错误。

因为这条语句所涉及的记录数太多,因此我们通过LIMIT参数分批删除,比如每10000条进行一次删除,那么我们可以利用 MySQL这样的语句来完成

代码如下

DELETE FROM syslogs WHERE status=1 ORDER BY statusid LIMIT 10000;

然后分多次执行就可以把这些记录成功删除。

另一种 删除方向。

上面通过比较觉的需要删除的量不是太大时,把需要删除的PID生到到另一个临时表中。

代码如下

mysql DBname -e "select a.pid from table1 a ,table2 b where a.pid=b.pid">del_pid.txt;

sed -i '1d' del_pid.txt

awk '{print "delete from table1 where pid=",$1,";"}' del_pid.txt >del_pid.sql

mysql DBname

这样把SQL拆成多个SQL执行速度应该不会太慢了。

mysql批量删除数据sql语句_mysql批量删除数据sql语句详解相关推荐

  1. mysql数据库主主_MySQL主主复制(图文详解)

    MySQL主主复制(图文详解) 发布时间:2020-07-12 23:10:25 来源:51CTO 阅读:218 作者:BonnieJason 一.实现原理 主主复制即在两台MySQL主机内都可以变更 ...

  2. mysql in从数据库取数_MySQL数据库中 where in 用法详解

    本文主要向大家介绍了MySQL数据库中 where in 用法详解,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 这里分两种情况来介绍 WHERE column IN (valu ...

  3. mysql外键检查的作用_MySQL外键使用及说明详解

    一.外键约束 MySQL通过外键约束来保证表与表之间的数据的完整性和准确性. 外键的使用条件: 1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持 ...

  4. mysql中数据库字段类型长度_Mysql数据库字段数据类型、长度详解

    一.数值类型 列类型 需要的存储量 TINYINT 1 字节 SMALLINT 2 个字节 MEDIUMINT 3 个字节 INT 4 个字节 INTEGER 4 个字节 BIGINT 8 个字节 F ...

  5. [Python从零到壹] 十五.文本挖掘之数据预处理、Jieba工具和文本聚类万字详解

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  6. SQL注入攻击实现原理与攻击过程详解

    SQL注入攻击实现原理与攻击过程详解 结构化查询语言(SQL)是一种用来和数据库交互的文本语言,SQL Injection就是利用某些数据库的外部接口把用户数据插入到实际的数据库操作语言当中,从而达到 ...

  7. 给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)...

    不多说,直接上干货! 这个很简单,在集群机器里,选择就是了,本来自带就有Impala的. 扩展博客 给Ambari集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解) 欢迎大 ...

  8. mysql批量删除多条记录的sql语句_mysql批量删除sql语句

    30种mysql优化sql语句查询的方法_计算机软件及应用_IT/计算机_专业资... 简要介绍基础语句: 1.说明:创建数据库 CREATE DATABASE database-name 2.说明: ...

  9. mysql查询主键sql语句_MySQL数据库-表操作-SQL语句(一)

    1. 数据库操作与存储引擎 1.1   数据库和数据库对象 数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件等. 数据库:存储数据库对象的容器. 数据库分两种 ...

  10. mysql教程中插入语句_mysql中插入数据Insert into语句用法

    在mysql中要向数据库中保存数据我们最常用的一种方法就是直接使用Insert into语句来实现了,下面我来给大家详细介绍Insert into语句用法 INSERT用于向一个已有的表中插入新行.I ...

最新文章

  1. AI基础架构Pass Infrastructure
  2. 凭着这把AutoML利剑,这家AI公司荣登 IEEE ISI“铁王座”
  3. Sth about Haml
  4. java Random类详解
  5. 计算机CPU哪家好,2019年电脑cpu排行榜_电脑CPU哪个好 电脑CPU排行榜2019
  6. Python easyGUI 文件浏览 显示文件内容
  7. 树莓派3b安装ubuntu mate(在有显示器前提下看)
  8. 【EXLIBRIS】纸版书目整理 -- 大书架 上 【292 种】【327册】
  9. 订单拣选作业模式总结
  10. tomcat + apache组合配置
  11. 使用eclipse配置adt
  12. Mentor-dft 学习笔记 day1--overview部分
  13. 阿里云 DataV 产品简介
  14. 基于STM32单片机的智能家居毕设
  15. 配置SSH服务远程连接空闲超时退出时间(包括SSH无法登录、登录缓慢)
  16. html数学相关符号
  17. 华为云 linux系统 ESC服务器 javaweb 环境配置
  18. nginx修改成非root用户启动
  19. linux下邮件服务器 qmail sendmail postfix - 三种MTA的比较
  20. 小程序前端 wxml注释

热门文章

  1. 编程需要用到的软件有哪些?最受欢迎的9个Python开发软件
  2. Qt5解决显示中文的时候出现乱码的问题
  3. lisp语言画地物符号_地物符号
  4. 零基础自学SQL课程 | OUTER JOIN外连接
  5. 翻开下一页——离开,再开始
  6. jquery 在兄弟节点前、或兄弟节点后添加最新元素
  7. 恢复系统设置或计算机无法点击进入,系统还原步骤_教您系统还原操作方法
  8. html桌面图标样式,Win7桌面图标样式怎么修改和还原|Win7修改和还原桌面图标样式的方法...
  9. 维智科技位列顶尖BI服务商,时空AI赋能商业生态数据价值最大化
  10. 学计算机需要学画画吗,学电脑绘画是否需要先学习手绘?