错误代码如下:

#(8) 把“邓维杰”同学的成绩全部删除。
SELECT * FROM sc WHERE EXISTS(SELECT * FROM student WHERE student.sno=sc.sno AND student.sname='邓维杰');
DELETE FROM sc WHERE degree IN(SELECT degree FROM sc WHERE sno=(SELECT sno FROM student WHERE sname='邓维杰'));

报错:

[SQL]DELETE FROM sc WHERE degree IN(SELECT degree FROM sc WHERE sno=(SELECT sno FROM student WHERE sname='邓维杰'));
[Err] 1093 - You can't specify target table 'sc' for update in FROM clause

百度原因:

update语句中包含的子查询的表和update的表为同一张表时

报错:1093-You can’t specify target table for update in FROM clause

mysql不允许update目标表和子查询里面的表为同一张表

解决方法:

1. e,就是不用同一张表呗(本人(小白)的解决方法。。)。

2. 大佬的方法是将子查询又嵌套了一层子查询(即外层的子查询不和父查询同一个表)。

修改后代码:

#(8) 把“邓维杰”同学的成绩全部删除。
SELECT * FROM sc WHERE EXISTS(SELECT * FROM student WHERE student.sno=sc.sno AND student.sname='邓维杰');
DELETE FROM sc WHERE sno IN (SELECT sno FROM student WHERE sname='邓维杰');

ok.

附大佬的解决方法:https://www.cnblogs.com/ghjbk/p/10456204.html

MySQL 1093 - You can't specify target table 'sc' for update in FROM clause的更多相关文章

  1. Mysql update in报错 [Err] 1093 - You can't specify target table 'company_info' for update in FROM clause

    Mysql update in报错 解决方案: [Err] 1093 - You can't specify target table 'company_info' for update in FRO ...

  2. MySQL中执行sql语句错误 Error Code: 1093. You can't specify target table 'car' for update in FROM clause

    MySQL中执行sql语句错误 Error Code: 1093. You can't specify target table 'car' for update in FROM clause 201 ...

  3. 关于mysql 5.7版本“报[Err] 1093 - You can't specify target table 'XXX' for update in FROM clause”错误的bug

    不同于oracle和sqlserver,mysql并不支持在更新某个表的数据时又查询了它,而查询的数据又做了更新的条件,因此我们需要使用如下的语句绕过: , notice_code ) a) ; 本地 ...

  4. [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 ...

  5. 1093 - You can't specify target table 'account' for update in FROM clause

    目的:查询一张表的相同的两条数据,并删除一条数据. 分析 先查询出相同的数据,然后删除 查询相同的数据 SELECT a.id FROM account a GROUP BY a.username H ...

  6. update mysql row (You can't specify target table 'x' for update in FROM clause)

    sql语句(update/delete都会出现此问题) update x set available_material_id = null where id not in (select id fro ...

  7. MySQL: [Err] 1093 - You can't specify target table 'bk' for update in FROM clause

    错误的意思说,不能先select出同一表中的某些值,再update这个表(在同一语句中). 例如下面这个sql: delete from tbl where id in (        select ...

  8. mysql:You can't specify target table 'bpm_tksign_data' for update in FROM clause

    UPDATE bpm_tksign_data WHERE actinstid ' AND nodeid = 'SignTask1' AND batch = ( SELECT max(a.batch) ...

  9. 解决MYSQL的You can't specify target table 'xxxxxxxxxx' for update in FROM clause

    出现这个问题的MYSQL的SQL语句形如: DELETE FROM xxxxa WHERE EXISTS (SELECT * FROM xxxx1 WHERE xxxxa.xxid=123) 解决方法 ...

随机推荐

  1. 基于Spring MVC + Spring + MyBatis的【银行卡系统】

    资源下载:https://download.csdn.net/download/weixin_44893902/45604256 练习点设计: 删除.新增 一.语言和环境 实现语言:JAVA语言. 环 ...

  2. Ranger-Solr审计日志安装

    使用RangerAdmin安装solr,基于已有的solr环境安装,主要是在solr创建用于存储数据的CoreAdmin. # 1.解压安装 在solr的安装机器上面,获取RangerAdmin并且解 ...

  3. CSS基础 CSS的三大特性以及选择器优先级计算方法

    1.子元素默认会继承父元素的样式,但不是所有的元素都有继承 常见的继承父元素特点的元素有: 1.color 2.font-sytle.font-weight.font-size.font-family ...

  4. 内联模板、X-Template

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <script s ...

  5. Flutter 让你的Dialog脱胎换骨吧!(Attach,Dialog,Loading,Toast)

    前言 Q:你一生中闻过最臭的东西,是什么? A:我那早已腐烂的梦. 兄弟萌!!!我又来了! 这次,我能自信的对大家说:我终于给大家带了一个,能真正帮助大家解决诸多坑比场景的pub包! 将之前的flut ...

  6. django 使用createView创建视图是form_valid()没有通过?

    django 使用createView创建视图是form_valid()没有通过的原因: fields中定义的字段要与from表单中的字段相对应 修改后 接着又报错: 查看没有取到id,最后通过req ...

  7. javaScript(笔记1)

    一.JavaScript数据类型: 1.分类: 基本数据类型 & 高级引用数据类型 2.基本数据类型: 数字类型(number), 字符串类型(string), 布尔类型(boolean) 3 ...

  8. 【Java】单例设计模式

    文章目录 单例设计模式 什么是设计模式 单例设计模式 实现 饿汉式 懒汉式 饿汉式与懒汉式的区别 饿汉式 懒汉式 单例模式的应用场景 单例设计模式 什么是设计模式 设计模式是在大量的实践中总结和理论化 ...

  9. Centos下安装Scala(1)

    1.登录centos至root角色下 配置环境变量 2.执行下述命令 scala -version 出现结果如下 输入 'y' 3.开始安装 4.安装完成界面 5.启动成功以及测试程序

  10. windows+goland+gometalinter进行本地代码检查(高圈复杂度、重复代码等)

    1.下载gometalinter release地址为:https://github.com/alecthomas/gometalinter/releases/tag/v3.0.0 下载windows ...