实现日、周、月排行统计 sql
在如今很多系统中,都需要进行日、周、月排行统计,但是在网上寻找 了一番,发现很多都是相对的周、月排行,即周排行则用当前时间减去7天。这样我个人认为并不恰当。如月排行中,假设今天是4月22日,则从3月22日至4月22日之间都可以算成月排行内,这样的话与我们的月排行不尽相同,我认为月排行应该指当月的排行。
概括一下,即两种情况:当前日期往前推一周或者一个月(暂且描述为“相对排行”),当前日期所在周或 者所在月(暂且描述为“绝对排行”)。
为了好描述和分析,举例说明。示例数据库如下:
说明:
表名:T_Visit
当前日期:2009-4-22
表中数据:如下
当前日期为星期 几(@day):3
相对排行实现办法:
日排行:
select top 20 ID, userIp, Date from T_Visit where (dbo.T_Visit.Date >=CONVERT(nvarchar(10), getdate(), 21)) AND (dbo.T_Visit.Date <= CONVERT(nvarchar(10),dateadd(day,1,getdate()), 21))
周排行:
select top 20 ID, userIp, Date from T_Visit where dbo.T_Visit.Date > getdate()-7
月排行:
select top 20 ID, userIp, Date from T_Visit where dbo.T_Visit.Date > getdate()-30
绝对排行实现办法:
日排行:
select top 20 ID, userIp, Date from T_Visit where (dbo.T_Visit.Date >=CONVERT(nvarchar(10), getdate(), 21)) AND (dbo.T_Visit.Date <= CONVERT(nvarchar(10),dateadd(day,1,getdate()), 21))
结果如下图:
周排行:
declare @day int
set @day=3
select top 20 ID, userIp, Date from T_Visit where (dbo.T_Visit.Date >=CONVERT(nvarchar(10),dateadd(day,-@day,getdate()),21)) AND(dbo.T_Visit.Date<=CONVERT(nvarchar(10),dateadd(day,(7-@day),getdate()), 21))
结果如下图:
月排行:
Select top 20 ID, userIp, Date from T_Visit where year(Date)=year(getdate()) andmonth(date)=month(getdate())
结果如下图:
(注:本示例在Sql Server 2005环境中测试)
转载于:https://www.cnblogs.com/jthb/p/3734182.html
实现日、周、月排行统计 sql相关推荐
- mysql分季度统计数据,mysql按日周月季度统计数据
mysql按日周月季度统计数据 mysql按日.周.月.季度统计数据 1.使用DATE_FORMAT做等值条件查询 2.DATE_FORMAT函数语法,参考w3school 3.可使用格式 4.使用示 ...
- Oracle按日周月分组统计,及next_day()函数详解
1.概述 工作中遇到如下问题:统计周期内关键词数,而这里的周期内最常用的就是日周月. 日月比较容易处理,周的话可以通过next_day()函数实现. 2.实例问题 如下,有一张表ljb_test,包括 ...
- 【原创】实现日、周、月排行统计
在如今很多系统中,都需要进行日.周.月排行统计,但是在网上寻找了一番,发现很多都是相对的周.月排行,即周排行则用当前时间减去7天.这样我个人认为并不恰当.如月排行中,假设今天是4月22日,则从3月22 ...
- php文章周月总排行榜怎么实现,帝国cms7.0实现日 周 月点击排行的方法
本文将为您介绍的是帝国cms7.0实现日 周 月点击排行的方法,具体操作方法请看下文: 新增信息的排行不太符合我的要求.就自己琢磨了一套全站信息的月点击.周点击排行.需要新增几个字段及修改文件.下面开 ...
- oracle 按日输出 取整数,Oracle按日周月分組統計,及next_day()函數詳解
1.概述 工作中遇到如下問題:統計周期內關鍵詞數,而這里的周期內最常用的就是日周月. 日月比較容易處理,周的話可以通過next_day()函數實現. 2.實例問題 如下,有一張表ljb_test,包括 ...
- MACD多周期共振指标公式,日周月共振
有人问多周期MACD怎么写,编写指标的难度其实不大,主要问题是解决多周期MACD显示的问题.日线.周线.月线三个周期,每个周期都有快线DIF和慢线DEA两条线,一共6条,怎么在副图上清晰显示出来. 一 ...
- java8 日期范围内 日/周/月/季度/年 的日期结果集
java8 日期范围内 日/周/月/季度/年 的日期结果集 /*** 根据时间范围列出所有日/周/月/季/年** @Author Moqi* @Date 2020/4/30* @Version V1. ...
- KDJ日周月金叉共振指标
昨天介绍了MACD多周期共振指标公式,KDJ通过类似的写法,也可以共振.本文介绍的KDJ日周月金叉共振指标包含日周金叉共振.日月金叉共振.周月金叉共振.日周月金叉共振四种类型. 需要注意的问题依然是周 ...
- sql 日周月统计和
sql本日\本周\本月统计 SQL的本月统计和本周统计 本月统计(MySQL) select * from booking where month(booking_time) = month(curd ...
最新文章
- Linux 发行版之 CentOS 简介
- php 打乱数组顺序_PHP实现大转盘抽奖算法
- java类只读怎么办_如何在Java中制作一个只读类?
- pytest配置文件pytest.ini
- warframe计算机拒绝访问,Win10运行warframe出现蓝屏DRIVER_CORRUPTED_EXPOOL怎么办
- NodeJS配置国内源
- 星巴克人造肉产品来了,植物牛肉餐品真香?
- python 搭建的http 动态服务器_Python3搭建http服务器的实现代码
- Poj2826 An Easy Problem
- gRPC Mock Server
- chrome 内核的浏览器pdf 字体显示问题
- java digester map_Tomcat7启动分析(三)Digester的使用(转载)
- 知乎:1.03亿月活用户,获得感战略下的内容质量和商业化布局难平衡
- data: function () { return {}} ——你不应该在一个子组件内部改变 prop
- openstack资料
- Parity(奇偶校验)和ECC(错误检查和纠正)
- android adb 存储权限,android adb 权限修改
- 机器学习之 各种熵详解
- 秦牧鸿蒙之体有什么用,玄幻:开局奖励鸿蒙圣体
- file和folder的区别是什么?
热门文章
- 在android中使用USB进行通信的4种方法
- 美国0封伊朗已经6天了,伊石油出口真归零了吗?
- mysql 中文字段名_MySQL全文索引怎么做?| 教程分享
- android tag的使用方法,Android:如何使用Html.TagHandler?
- python字符串索引必须是整数_TypeError:在Python中,字符串索引必须是整数
- 比特币交易手续费_投资人跑步进军比特币,OKEx交易手续费最高打6折
- odd raio值 是什麼_乳化油相所需的HLB值
- python计算矩阵方程_python/sympy求解矩阵方程的方法
- JAVA vector的遍历_谈谈vector容器的三种遍历方法
- Unity内实现Android APK版本更新