日期:2014-05-18  浏览次数:20517 次

insert 本表的累计数
我有一表

id ch lmc jmc rgl
1 wsw01 ass bss 300
2 sew02 aww bww 400
3 wer01 gff fgg 450

要得到如下效果,把rgl累加后数值添加至表最后,并在ch字段加“合计”

id ch lmc jmc rgl
1 wsw01 ass bss 300
2 sew02 aww bww 400
3 wer01 gff fgg 450
4 合计 1150


------解决方案--------------------
SQL code
insert into t(id,ch,lmc)
select max(id)+1,'合计',sum(rgl) from t

------解决方案--------------------
得写insert触发器,一插入就交换两行的ID,并把合计的总值=总值+inserted.rgl就可以了。
------解决方案--------------------
不知道你为什么一定要加到最后,通常这种情况下,设置为第一行最好, ID=0。

关于顺序,你可以在读取的时候,先读取ID<>0, 再union ID = 0.
关于数据的更新,就如3楼说的,使用触发器就行。