You can't specify target table 'tablename' for update in FROM clause的解决方法
在执行下面的sql时报错
- DELETE FROM temp WHERE id IN (SELECT a.id FROM t_user t JOIN temp a ON t.email = a.email);
这种写法在sqlserver或者oracle中是支持的,但是mysql目前是不支持的,在mysql中不能同时查询一个表的数据再同时进行删除,只能用以下的办法折中
- CREATE TABLE tmp AS SELECT a.id FROM t_user t JOIN temp a ON t.email = a.email;
- DELETE FROM temp WHERE id IN (SELECT id FROM tmp);
先将查询到的数据放到一个临时表中,然后再对临时表进行查询,然后再删除目标表中满足条件的数据。
转载于:https://blog.51cto.com/sucre/629493
You can't specify target table 'tablename' for update in FROM clause的解决方法相关推荐
- SQL报错:You can’t specify target table ‘person’ for update in FROM clause的解决方法
You can't specify target table 'person' for update in FROM claus 不能在FROM子句中指定要更新的目标表'person' 报错原因:在M ...
- 错误:You can't specify target table 'xxx' for update in FROM clause的解决
今天在MySQL数据库删除重复数据的时候遇到了一个问题.如下脚本: DELETE FROM tempA WHERE tid IN ( SELECT MAX(tid) AS tid FROM tempA ...
- MySQL 语法问题:You can‘t specify target table ‘xxx‘ for update in FROM clause. 原因及解决方法
报错信息如下: [Code: 1093, SQL State: HY000] You can't specify target table 'bd_bankaccbas' for update in ...
- You can't specify target table 'TS_AUTH_ADMIN' for update in FROM clause记录
1. 报错:You can't specify target table 'TS_AUTH_ADMIN' for update in FROM clause, 百度查到说是,不能在同一语句中先sele ...
- [Err] 1093 - You can't specify target table 'xxx' for update in FROM clause解决方法
执行开发同学提供的删除数据的sql时报错[Err] 1093 - You can't specify target table 'run_result' for update in FROM clau ...
- [Err] 1093 - You can't specify target table 's' for update in FROM clause
[Err] 1093 - You can't specify target table 's' for update in FROM clause 执行SQL DELETE from book WHE ...
- You can't specify target table 'ship_product_cat' for update in FROM clause
有时候我们在编辑update时需要select作为条件,在mysql中有时会出现这样的错误:You can't specify target table for update in FROM clau ...
- MySQL||SQL_ERROR_INFO: “You can‘t specify target table ‘titles_test‘ for update in FROM clause“
一.问题描述 假定test数据库存在表titles_test,表内数据如下: 先要求删除emp_no重复的记录,只保留最小的id对应的记录.编写代码如下: delete from titles_tes ...
- mysql-1093 - You can‘t specify target table ‘titles_test‘ for update in FROM clause
错误 DELETE FROM titles_test WHERE id NOT IN(SELECT MIN(id)FROM titles_testGROUP BY emp_no); 入上述操作会报错: ...
最新文章
- 转:Eclipse自动补全功能轻松设置
- switch日版有中文吗_任天堂switch国行和日版的区别
- Fiddler抓包原理解析
- S3C6410 裸机硬件JPEG解码(转)
- 论文浅尝 | NumNet: 一种带有数学推理的机器阅读理解模型
- VS 错误: 未找到与约束contractname Microsoft.VisualStudio.Utilities.IContentTypeRegistryService...
- Tensorflow异常集锦
- 利用Python进行数据分析--时间序列
- Modelica学习笔记1
- android 夏令时,android – jodatime如何知道夏令时是否开启
- 五大主流浏览器和内核
- cse7761电能计量芯片驱动程序
- 【人物专访】从12K到20+K,中间只差一个来学吧
- Java九十条经验法则之第三条:用私有构造器或者枚举类型强化Singlen对象
- 什么是回归问题和分类问题?机器学习知识点
- 枚举类型的理解和应用
- 图书馆管理信息系统的用例图和类图
- 14、Hibernate的HQL与QBC检索
- 整样运用计算机考试,计算机等级考试真题的重要性及如何高效利用?
- 48 一个扭了腰的bitcoiner的日常【2020-07-09 2042】