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

  • 相关阅读:
    linux分析工具之vmstat详解
    linux分析工具之top命令详解
    hadoop之yarn详解(命令篇)
    hadoop之yarn详解(基础架构篇)
    linux分析利刃之sar命令详解
    hadoop之mapreduce详解(优化篇)
    linux之find命令详解
    一个毫无用处的公众号封面生成器
    一个简单的计时器对比各种可迭代对象定义方式的速度区别
    python中的迭代器和生成器
  • 原文地址:https://www.cnblogs.com/ynxrsoft/p/7417404.html
Copyright © 2011-2022 走看看