zoukankan      html  css  js  c++  java
  • sql语句实现累计数

    前言,要实现按某个字段统计,直接用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进行统计。

  • 相关阅读:
    CentOS7.4部署Python3+Django+uWSGI+Nginx
    测试:ATM
    JDBC_增删改
    HTTP请求状态码
    Servlet2
    Java日期时间3
    Servlet1
    安装Tomcat
    Java日期时间2
    广度优先遍历
  • 原文地址:https://www.cnblogs.com/klbc/p/5025669.html
Copyright © 2011-2022 走看看