新增文章
文章标题
分类
C#
云星空
K3 BOS
K3 功能
用友
Oracle
python
SQL
MySql
PHP
HTML
script
windows
Access
影视后期
财务
服务
生活
内容
前言,要实现按某个字段统计,直接用count/sum……group by语句就可以实现, 但是要实现累计,比如按时间累计,从12月3号开始累计数据, 比如: 4号统计3、4号的数据, 5号统计3、4、5号的数据, 递归累计: with tab as(SELECT GIVE_DAY,COUNT(DISTINCT MOBILE) NUM FROM(SELECT a.*,to_char(GIVE_TIME,'yyyy-mm-dd') GIVE_DAY from T_SURVEY_USERINFO a) A WHERE A.GIVE_DAY>'2015-12-02' GROUP BY GIVE_DAY) select a.GIVE_DAY,sum(b.NUM) NUM from tab a,tab b where b.GIVE_DAY<=a.GIVE_DAY group by a.GIVE_DAY order by a.GIVE_DAY 其实,上面的sql语句还可以有优化的空间,就是tab部分,可以不用count, 仅仅只是转换一下日期格式, 然后在后面的select语句中用count进行统计。
返回
保存