mysql中UPDATE更新数据where以另一个selecet子句为结果的1093错误
来源:互联网 发布:程序员项目经历怎么写 编辑:程序博客网 时间:2024/06/07 16:21
错误信息:错误代码: 1093You can't specify target table 'score' for update in FROM clause产生原因:MySQL中UPDATE更新数据where以另一个selecet子句为结果,并且select查询的表和update更新的表是同一个表,以一个的查询结果为基础再修改这表就会报错错误示例:```UPDATE score SET 成绩=成绩-10 WHERE score.学号 IN (SELECT 学号 FROM score,lesson WHERE (score.课程号 = lesson.课程号 AND 课程名="数据库" AND 成绩<60) ) ;
```解决方法:给update的where内的select查询结果一个别名, 再套一个select查询,以最外层的查询的结果为update的更新条件示例:```UPDATE score SET 成绩=成绩+10 WHERE score.学号 IN (SELECT * FROM ((SELECT 学号 FROM score WHERE 课程号 IN (SELECT 课程号 FROM lesson WHERE 课程名='数据库') AND 成绩<60 ) AS temp));```
阅读全文
0 0
- mysql中UPDATE更新数据where以另一个selecet子句为结果的1093错误
- MySQL 以UPDATE更新数据
- MYSQL的WHERE子句
- MySQL的where 子句
- Oracle update......where......子句
- mysql update 更新两张表的查询结果
- MySql含有GROUP BY子句的查询中如何显示COUNT()为0的结果
- 在MSSQL和MYSQL的WHERE子句中使用CASE
- mysql的5中查询子句之一where条件查询
- 如何在一个update语句中,用一个表的数据更新另一个表的数据
- mysql使用update更新数据遇到的错误:Data truncation: Truncated incorrect DOUBLE value:Mysql Update
- 使用where子句过滤表中数据
- SQL2000视图中关联与where子句中条件判断的结果有所区别
- MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?
- MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?
- datewindow的update where子句控制并发的实例
- mysql 更新数据 update
- PHP MySQL Where 子句
- Oracle安装后只有三个服务项,少了最重要的监听等项
- 用scikit-learn和pandas学习线性回归
- 结构体定义的三种方式
- 59. Spiral Matrix II
- scikit-learn 和pandas 基于windows单机机器学习环境的搭建
- mysql中UPDATE更新数据where以另一个selecet子句为结果的1093错误
- 机器学习研究与开发平台的选择
- JQuery中attr()和prop()方法的区别
- ms 15 034 security
- 代码实现XML布局
- java 使用Apache的 commmon-i0 库 操作IO与 文件
- 进程模块句柄
- RocAlphaGo的研究
- WPF笔记(2.4 Grid)