嘿,我一直在为一个学校项目开发mysql。我做了一个雇员表和一个孩子表。但是我收到一个错误消息:“您不能指定要从from子句中更新的目标表”,我想做的就是给所有工作超过20年的员工加薪10%,有个孩子这是代码。
update employee
set salary=salary*1.1
where exists (
select * from kids k,employee e where e.art=k.art and e.hire_date<='1998-11-
16');
请帮助我:D
答案 0 :(得分:0)
您可以使用JOIN来实现。请尝试以下查询。
UPDATE employee AS e
INNER JOIN kids AS k ON e.art=k.art
SET e.salary=salary*1.1
WHERE e.hire_date<='1998-11-16'