我想用下表更新saboloo
update sagani
set saboloo=sum(sagani.qula + sagani.shualeduri + sagani.finaluri)
where sagnis_id='9';
答案 0 :(得分:0)
SUM在这里不适用,因为您的要求非常简单。您可以根据自己的目的尝试以下脚本-
UPDATE sagani
SET saboloo=(sagani.qula + sagani.shualeduri + sagani.finaluri)
WHERE sagnis_id='9';
答案 1 :(得分:0)
不允许在update
中进行汇总,因为update
会更改表中行中的值;数据汇总后,与原始行的连接就会丢失。
我可以想象你的意思是两件事之一。第一个是该行中的简单总和:
update sagani
set saboloo = (sagani.qula + sagani.shualeduri + sagani.finaluri)
where sagnis_id = 9; -- looks like a number so I assume it is a number
或者,您可能想要更新所有行中具有相同值的多行:
update sagani s
set saboloo = (select sum(s2.qula + s2.shualeduri + s2.finaluri)
from sagani s2
where s2.sagnis_id = s.sagnis_id
)
where s.sagnis_id = 9;
您的问题没有足够的信息来推断您的意图,尽管使用sagnis_id
表示只有一行,并且您根本不希望汇总。