数据库里面字段
结果显示
帮你顶一下,感觉有点难,应该要用到存储过程吧。
这个用纯sql实现确实有点困难,但是可以换个角度,查询sql之前,先把给定日期之前的12个月的日期计算出来,
然后根据这两个日期再去查询数据库,就会简单很多。
假设表 名为 temp 以下是mysql的写法
select s.FYEAR,s.FMONTH,(select sum(tm.CUM) from temp tm where (tm.FYEAR = s.FYEAR and tm.FMONTH <= s.FMONTH) or tm.FYEAR<s.FYEAR ) from
(select (@rowNO := @rowNo+1) AS rowno,FYEAR,FMONTH,CUM FROM temp,(select @rowNO :=0) b order by FYEAR asc,FMONTH asc ) s
where s.rowno >11
写错了 少了 一段 以下是 正解
select s.FYEAR,s.FMONTH,(select sum(tm.CUM) from temp tm where (tm.FYEAR = s.FYEAR and tm.FMONTH <= s.FMONTH) or tm.FYEAR<s.FYEAR order by tm.FMONTH desc ,tm.FMONTH desc limit 12) from
(select (@rowNO := @rowNo+1) AS rowno,FYEAR,FMONTH,CUM FROM temp,(select @rowNO :=0) b order by FYEAR asc,FMONTH asc ) s
where s.rowno >11
没有大神来帮我一下吗?