博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
delete select 表
阅读量:6578 次
发布时间:2019-06-24

本文共 414 字,大约阅读时间需要 1 分钟。

  hot3.png

清理表tb1中的数据,name相同的项只保留一个(以下讨论只保留id值最大即最新的一个)
delete from tb1 where id in (select max(id) from tb1 group by name);

这段代码在mysql中会出错,提示 you can't specify target table 'tb1' for update in from clause 错误,意思大概是不能对正在打开作为条件的表进行修改。解决方法:建立临时表
create table tmp as select max(id) as col1 from tb1 group by name;delete from tb1 where id not in (select col1 from tmp); drop table tmp;

转载于:https://my.oschina.net/neo600/blog/77023

你可能感兴趣的文章
ORACLE 存储过程异常捕获并抛出
查看>>
博客园博客美化相关文章目录
查看>>
root用户重置其他密码
查看>>
Oracle推断值为非数字
查看>>
多年前写的一个ASP.NET网站管理系统,到现在有些公司在用
查看>>
vue-cli中理不清的assetsSubDirectory 和 assetsPublicPath
查看>>
从JDK源码角度看Short
查看>>
五年 Web 开发者 star 的 github 整理说明
查看>>
Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
查看>>
中台之上(五):业务架构和中台的难点,都是需要反复锤炼出标准模型
查看>>
使用模板将Web服务的结果转换为标记语言
查看>>
inno setup 打包脚本学习
查看>>
php 并发控制中的独占锁
查看>>
[Leetcode] Factor Combinations 因数组合
查看>>
APM终端用户体验监控分析(下)
查看>>
React Native 0.20官方入门教程
查看>>
JSON for Modern C++ 3.6.0 发布
查看>>
Tomcat9.0部署iot.war(环境mysql8.0,centos7.2)
查看>>
我的友情链接
查看>>
监听在微信中打开页面时的自带返回按钮事件
查看>>