try something like the following, but it is not efficient (it is easier and more efficient to do the summation in your application):select xm,dates,jbgz+jj+buzhu as cur
, (select sum(jbgz+jj+buzhu) from gongzi t2 where t2.xm=t1.xm and t2.dates <= t1.dates) as total 
from gongzi t1 order by xm, dates

解决方案 »

  1.   

    select xm 姓名,dates 发薪时间,jbgz+jj+buzhu 本期,(select sum(jbgz+jj+buzhu) from gongzi b where b.dates<=a.dates) from gongzi a
      

  2.   

    如果:
    insert gongzi (xm,jbgz,jj,buzhu,dates) values ('dali',500,300,200,'2002-8-1')
    insert gongzi (xm,jbgz,jj,buzhu,dates) values ('dali',500,200,200,'2002-9-1')
    insert gongzi (xm,jbgz,jj,buzhu,dates) values ('dali',500,700,200,'2002-10-1')
    insert gongzi (xm,jbgz,jj,buzhu,dates) values ('dali',700,400,200,'2002-11-1')
    insert gongzi (xm,jbgz,jj,buzhu,dates) values ('dali',700,300,200,'2002-12-1')那要用:select xm 姓名,dates 发薪时间,jbgz+jj+buzhu 本期,(select sum(jbgz+jj+buzhu) from gongzi b where b.dates<=a.dates and a.xm=b.xm) from gongzi a
      

  3.   

    select xm 姓名,dates 发薪时间,jbgz+jj+buzhu 本期,(select sum(jbgz+jj+buzhu) from gongzi b where b.dates<=a.dates) 累计 from gongzi a