当前位置:网站首页>mysql delete 执行报错:You can‘t specify target table ‘doctor_info‘ for update in FROM clause
mysql delete 执行报错:You can‘t specify target table ‘doctor_info‘ for update in FROM clause
2022-08-03 15:48:00 【心心念念的小鼠标】
因为一些测试原因,导致医生表里出现了两个医生ID相同的数据,也就是所谓的脏数据,那么如何把多余的那条删除掉呢?
一、首先筛选出条数大于1条的:
select doctor_id,count(doctor_id) from `doctor_info` where `scale_group_id`="31" group by doctor_id having count(doctor_id)>1
二、决定删除其中的那一条?max/min
1、max
select max(id) as id from doctor_group_permission where `scale_group_id`="24120868141551631" group by doctor_id having count(doctor_id)>1
2、min
select min(id) as id from doctor_group_permission where `scale_group_id`="24120868141551631" group by doctor_id having count(doctor_id)>1
三、数据筛选出来了,直接delete 报错了
delete from doctor_info where id in(select max(id) as id from doctor_info where `scale_group_id`="31" group by doctor_id having count(doctor_id)>1)
四、错误说明
不能先select出同一表中的某些值,再update这个表(在同一语句中),即不能依据某字段值做判断再来更新某字段的值。
借用临时表来处理一下,前端时间写过一个update的,链接在此
五、正确delete操作 借用临时表a
delete from doctor_info where id in(select a.id from(select max(id) as id from doctor_info where `scale_group_id`="31" group by doctor_id having count(doctor_id)>1) a)
边栏推荐
- 扩展欧几里得求逆元实例
- Ruoyi Ruoyi framework @DataScope annotation use and some problems encountered
- DC-DC 2C (40W/30W) JD6606SX2 power back application
- 【周报】2022年7月24日
- 聊聊这个SaaS领域爆火的话题
- 2021年12月电子学会图形化二级编程题解析含答案:消灭蝙蝠
- Basic knowledge points in js - events
- Awesome!Coroutines are finally here!Thread is about to be in the past
- 在 360 度绩效评估中应该问的 20 个问题
- leetcode:899. 有序队列【思维题】
猜你喜欢
袁小林:沃尔沃专注于出行的安全感,并且把它做到极致
MATLAB gcf figure save image with black background/transparent background
Windows服务器如何防止黑客入侵的安全设置
With a single operation, I improved the SQL execution efficiency by 10,000,000 times!
leetcode:899. 有序队列【思维题】
上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB
6000 字+,帮你搞懂互联网架构演变历程!
证实了,百度没有快照了
Fortinet产品导入AWS AMI操作文档
[微信小程序开发者工具] × #initialize
随机推荐
30W 2C(JD6606S + FP6652X2)BOM
Optimal Power Flow (OPF) for High Voltage Direct Current (HVDC) (Matlab code implementation)
瞌睡检测系统介绍
AWS中国区SDN Connector
AI+BI+可视化,Sugar BI架构深度剖析
【数据库数据恢复】SqlServer数据库无法读取的数据恢复案例
NodeJs - cross domain
方舟生存进化开服需要多少钱
深度学习GPU最全对比,到底谁才是性价比之王?
JS handwritten call apply bind (detailed) (interview)
devops-3:Jenkins增加静态节点
如何选择合适的损失函数,请看......
JD6606SP5_JD6606SSP_JD6606SASP_JD6621W7百盛新纪元授权代理商
STM32 GPIO LED和蜂鸣器实现【第四天】
分布式系统与微服务的区别
Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行(含系列目录)。
DC-DC 2C (40W/30W) JD6606SX2 power back application
人脸识别损失函数的汇总 | Pytorch版本实现
1、实例开启无锁表结构变更以后,在任务编排中通过“单实例SQL”节点进行的结构变更,是优先采用无锁表
身为售后工程师的我还是觉得软件测试香,转行成功定薪11.5K,特来分享下经验。