【发布时间】:2016-02-17 04:36:57
【问题描述】:
我有一个表“员工”,我正在尝试将一些属性(例如薪水)设置为与表中的其他值相同的值。我对这个错误的理解是,可以通过以下解决方法来避免它,使用临时表:
UPDATE employees
SET salary=(SELECT salary FROM (SELECT * FROM employees WHERE employee_id= '123') AS t1)
WHERE employee_id='456';
但是,当我尝试此操作时,我仍然收到相同的错误代码(“无法在 FROM 子句中指定目标表 'employees' 进行更新”)。这里还有其他问题吗?
【问题讨论】:
-
它正在处理sqlfiddle
-
如果它应该在 MySQL 上运行,是否有某种原因无法在 MySQL 上运行......?我不是很熟悉。
-
因为虽然它不是在同一个表上连接的更新,但它可能需要不同的别名?
-
服务器版本 5.7.9,工作台版本 6.3.5