mysql中,打算使用exists查找相关记录,然后删除,结果搞不定。

我们有个表folder,里面有个字段code存在重复值,本来编码应该是唯一的。因此想将重复记录删除。

这样

delete from folder fd1 where exists(
select 1 from folder fd2 where id<>fd1.id and code=fd1.code);

不行!

这样

delete from folder where id in(
select id from folder fd1 where exists(
select 1 from folder fd2 where id<fd1.id and code=fd1.code));

还是不行!

查找网上的例子:

DELETE tbFROM tb LEFT JOINtb tb2ON tb2.`merchantId` = 'A32WNPGI8GE4WW' ANDtb2.`marketplaceId` IN ('A1AM78C64UM0Y8', 'A2EUQ1WTGCTBG2', 'ATVPDKIKX0DER')WHERE tb2.merchantID IS NULL;

我去,这是什么鬼,看不懂。

心一横,使出绝招,先将重复记录的ID保存进临时表,然后结合该临时表删除,最后打扫战场,删除临时表,深藏功与名。

create temporary table tmp_folder_id as select id from folder fd1 where exists(select 1 from folder fd2 where id<fd1.id and code=fd1.code);delete from folder where id in(select id from tmp_folder_id);drop table tmp_folder_id;

mysql的delete语句使用exists删除数据走不通相关推荐

  1. mysql的delete语句_mysql删除语句

    展开全部 mysql删除语句如下: 1.delete删除一行:delete from student where id=1. 2.delete删除多行:delete from student wher ...

  2. mysql批量删除数据sql语句_mysql批量删除数据sql语句详解

    1.like与 in批量删除指定记录 like语法 like主要是用来模糊查询了 sql = "delete from A where field like '%ABC%'" 这个 ...

  3. MySQL(16)--- DELETE 语句

    你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 你可以在 mysql> 命令提示符或 PHP 脚本中执行该命令. 语法 以下是 SQL DELETE 语 ...

  4. MySQL中包含外键无法删除数据的解决方案

    1.在数据库连接信息加入以下代码,意思就是允许执行多语句查询. allowMultiQueries=true 2.在删除语句前面加上SET FOREIGN_KEY_CHECKS=0; 意思就是取消My ...

  5. mysql删减表的关键字_Mysql 删除数据及数据表

    在Mysql 中删除数据以及数据表非常的容易,但是需要特别小心,因为一旦删除所有数据都会消失. 删除数据 删除表内数据,使用delete关键字. 删除指定条件的数据 删除用户表内id 为1 的用户:d ...

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

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

  7. mysql使用delete from where in 删除时报错如何解决

    数据库存在重复的垃圾数据想利用delete from where in删除,语句如下: DELETE FROM tms_daily_plan WHERE tms_daily_plan_id IN ( ...

  8. mysql drop table 释放空间_MySQL删除数据几种情况以及是否释放磁盘空间【转】

    MySQL删除数据几种情况以及是否释放磁盘空间: 1.drop table table_name 立刻释放磁盘空间 ,不管是 Innodb和MyISAM ; 2.truncate table tabl ...

  9. 【MySQL】sql语句中exists和in有何区别?

    1.概述 sql语句中exists和in有何区别? SQL语句优化有哪些方法? sq|语句中exists和in有何区别如下: exists是用循环( loop )的方式,由outer表的记录数决定循环 ...

  10. mysql数据库中删除数据用什么语句_mysql数据库删除数据语句

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

最新文章

  1. Android之EditText的各种使用
  2. 【XAudio2】1.XAudio2 介绍
  3. Java8 LinkedHashMap 源码阅读
  4. boost::histogram::detail::argument_traits用法的测试程序
  5. express 对数据库数据增删改查
  6. Docker存储驱动之OverlayFS简介
  7. silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发)
  8. leetcode 509. 斐波那契数(dfs)
  9. 算法入门篇二 认识O(NlogN)的排序
  10. Mariadb /MySQL max_allowed_packet设置及问题
  11. 为什么设置了面容ID,仍然需要输入密码解锁iPhone?
  12. 个人关于颈椎病治疗和保养的一些经验总结!
  13. Strurts(四)——从Struts原型模拟看大道至简(含实例下载)
  14. 让代码审查扮演更好的角色
  15. f.readline()和f.readline()和f.read()
  16. C语言在学习编程的作用并简单了解一下C语言
  17. 泰国ATM机被入侵致1200多万泰铢被盗,幕后黑客留疑团
  18. 最后一次正确配置计算机,win10进入最后一次正确配置的三种方法
  19. Linux之搜索路径PATH
  20. Trunking学习总结

热门文章

  1. 射频电路习题解答(一)——利用电子smith图解题
  2. vm虚拟机搭建click house(单机)
  3. html a 标签 邮件超链接 发送邮件
  4. 代理xp组件已作为此服务器安全配置的一部分被关闭
  5. app测试环境搭建(适用monkey测试及日志分析)
  6. 锁的等级:方法锁、对象锁、类锁。
  7. vue图片裁剪插件vue-cropper
  8. XTU OJ 1396
  9. input标签用法与功能全面解析
  10. 互联网快讯:粉笔科技布局线下打造双核驱动;极米产品获用户青睐;迅雷发布2021年财报;荣耀Magic4系列国内发布