问题标题:
mysql前n行求和原始表:table1IDNum1324334557…………增加一行,计算Num的累积,第i个ID对应前i行的和IDNumSumNum133247331045155722…………如何用mysql语句计算SumNum
问题描述:
mysql前n行求和
原始表:
table1
IDNum
13
24
33
45
57
…………
增加一行,计算Num的累积,第i个ID对应前i行的和
IDNumSumNum
133
247
3310
4515
5722
…………
如何用mysql语句计算SumNum
韩小汀回答:
由于mysql不允许一个修改语句中,还查询自己,所以你如果想要计算新增加列的值,我觉得得用存储过程实现.
游标循环表里的记录,
然后查询当前记录之前的sum(num),
然后修改talbe1中SumNum的值,
继续循环,直到循环完表中数据.
刘振梅回答:
如果不在原表中插入,新建一个表,如何写mysql语句?循环我不大会用
韩小汀回答:
DELIMITER$$CREATEPROCEDURE`proc_temp_test`()BEGINDECLAREFOUNDBOOLEANDEFAULTTRUE;DECLAREi_numINTEGER;DECLAREi_idINTEGER;DECLAREi_sumINTEGER;DECLAREc_testCURSORFORSELECTid,numFROMtable1;DECLARECONTINUEHANDLERFORNOTFOUNDSETFOUND=FALSE;OPENc_test;FETCHc_testINTOi_id,i_num;WHILEFOUNDDOSELECTSUM(num)INTOi_sumFROMtable1WHEREid
点击显示
其它推荐
热门其它推荐