sql怎么把一列相减后的数,再求和放到新的一列?

比如
a b a-b sum(a-b)
5 3 2 9
6 5 1 9
8 2 6 9
把减完的数再累加起来,放到一列里面

第1个回答  2019-08-25
直接update就可以,但是得做一个嵌套查询,假设表名是table,已知两列是a,b,要更新c列直接执行
update table a set a.c=(select sum(aa.a-aa.b) from table aa)
这样mysql会报错,提示的意思大概是不能先select出同一表中的某些值,再update这个表(在同一语句中),但是可以通过建立一个中间查询(或者说是中间表)来实现,代码如下:
update table a set a.c=(select cc.sm from (select sum(a-b) as sm from table) cc)
第2个回答  2019-08-25
select a,b,a-b,(select sum(a-b) from 表名) c from 表名本回答被提问者采纳
相似回答