zoukankan      html  css  js  c++  java
  • mysql如何出查出最近7天,最近30天,最近n天的记录?

    已查询浏览量为例:原始数据如下:

    思路分析:数据有了,统计某一天的浏览量,所有浏览量,或固定时间段内的浏览量在这里我们就不多说了,大家都会,那我们是如何将最近七天的数据统计出来呢?

    首先,我们说的最近7天,最近一周,并不是指数据库里所存的最后7天的数据,而是从今天算起,往前7天内数据库中的数据。这样的话,这样的话,就是以时间为主线(主表)

    来统计时间所对应的浏览量。

    select DATE_FORMAT(mycreatedate,'%m-%d') as countKey,ifnull(COUNT(pv.createdate), 0) as countValue from (
    SELECT curdate() as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 1 day) as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 2 day) as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 3 day) as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 4 day) as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 5 day) as mycreatedate
    union all
    SELECT date_sub(curdate(), interval 6 day) as mycreatedate
    ) as total
    LEFT JOIN pageview pv on DATE_FORMAT(pv.createdate,'%Y-%m-%d')=total.mycreatedate GROUP BY mycreatedate

    先查出最近7天是哪7天,然后left join ,有数据,我们统计那一天的count,没有的话补0,利用函数:ifnull(COUNT(pv.createdate), 0)来实现补0

    查询结果如下:

    这样就查询出了最近7天每一天的浏览量,当然了,应用在浏览量统计图(echarts)中就出现了如下效果:

    这里使用的是echarts来做的报表,使用也非常简单,官网有很多样式可以选择,感兴趣的小伙伴可以到官网看看:http://echarts.baidu.com/examples.html

  • 相关阅读:
    导包Scanner类---Java
    标准类组成---Java
    Educational Codeforces Round 54 (Rated for Div. 2) A. Minimizing the String
    [专题总结] 二分搜索专题
    [最大权森林] [POJ] 3723 Conscription
    [模板] 快读快写
    [模板] 常用数论 -> gcd、exgcd、乘法逆元、快速幂、快速乘、筛素数、快速求逆元、组合数
    [模板] 堆 heap
    牛客小白月赛8 F-数列操作 (有序表)
    [模板] 字符串处理函数
  • 原文地址:https://www.cnblogs.com/ynxrsoft/p/7417404.html
Copyright © 2011-2022 走看看