我想把一月的数据更新到对应职工的2月份里怎么不行呢
update tab set data=(select sum(data) from tab a a.id=tab.id and month='1')
where month='1'
...全文
1384打赏收藏
一个更新sql的问题, 怎么写?
一个表如下 职工编号 月份 数据列 a 1 123 b 1 234 a 2 345 b 2 456 我想把一月的数据更新到对应职工的2月份里怎么不行呢 update tab set data=(select sum(data) from tab a a.id=tab.id and month='1') where month='1'
empid month data1 data2 data3 ...
a 1 123 4 5
b 1 234 6 5
a 2 345 7 4
b 2 456 65 45
现在的问题是这样的,有很多数据列,根据计算公式来更新某一列的数据,
可能是其他列的运算或是和别的类似表的数据列运算
比如我要更新2月份data1列的员工数据更新为1月份data2列的数据+data3列2月份的数据
update tab set data1=(select sum(data2) from tab a a.id=tab.id and month='1')+
(select sum(data3) from tab b b.id=tab.id and month='2')
where month='2'
这样写对吗,我在sql server里怎么不行呢,更新出的数据不对
因为程序要兼顾多个数据库类型的