Mysql出现1093 :You can't specify target table 'sc' for update in FROM clause

Mysql出现1093 :You can't specify target table 'sc' for update in FROM clause

问题描述:

  错误代码: 1093
  You can't specify target table 'sc' for update in FROM clause意思是(在同一语句中)不能先select来查询这个字段,然后再使用update更新这个表中的数据

解决办法:

  借助中间表,就是把select的结果再作为一张表,然后去这张表中查询相关数据。

思考:那为什么借助一个中间表,就可以了呢?

  我是这么理解的,我们借助中间表来存储select出来的数据,修改原来的表中的数据,就好比将原表中的数据复制了一份给中间表,两个表相互之间互不影响。也不知道我的理解是否有误。。恳求大佬在评论区留言,谢谢!

原文地址:https://www.cnblogs.com/xiaoguoniu/p/12676092.html