我将参加2012年索赔的运营商的工资提高了11%,
尝试

update operator or
September o.sueldo = o.sueldo + (o.sueldo * 0.11)
where exists (select 1 from claim where r.cod_operador r = o.cod_operador
and r.fecha Between '2012-01-01 'and '2012-12-31');


但它说
“错误代码:1241。操作数应包含1列。”
有人知道我该如何解决这些错误?

sqlfiddele在这里:http://sqlfiddle.com/#!2/b2771

最佳答案

您对这句话做了什么?

这样,它至少适合您的桌子:

update operador o
set o.sueldo = o.sueldo + (o.sueldo * 0.11)
where exists (select 1 from reclamo r where r.cod_operador = o.cod_operador
and r.fecha Between '2012-01-01 'and '2012-12-31');


但我不知道它最终是否会做正确的事...

关于mysql - SQL更新中的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17979960/

10-09 20:02