IF OBJECT_ID('[tb]') IS NOT NULL DROP TABLE [tb]
GO
create table tb(日期 varchar(23))
insert into tb values('2011-01-18 08:56:43.000')
insert into tb values('2011-01-18 08:58:43.000')
insert into tb values('2011-01-18 09:07:43.000')
insert into tb values('2011-01-18 09:09:43.000')
insert into tb values('2011-01-18 09:10:43.000')
insert into tb values('2011-01-18 09:13:43.000')
insert into tb values('2011-01-18 09:17:43.000')
insert into tb values('2011-01-18 09:46:43.000')
insert into tb values('2011-01-18 09:48:43.000')
insert into tb values('2011-01-18 09:47:43.000')
insert into tb values('2011-01-18 09:55:43.000')
goselect * from [tb]
需求:这个是一个访问统计。
要求将15分钟内的所有访问,全部只算作一次访问。
也就是8点45分-9点整的所有记录,只算一次。9点-9点15,算一次。9点15到9点30算一次。以此类推
可能15分分钟内都没有访问记录。
有非常多的数据,每天每小时每分每秒都可能有记录。
求最后,总访问次数。以上测试数据,结果返回5。求指导,感激不尽。
解决方案 »
- 企业管理器里有表的复制和剪切,可我在哪粘贴呢?
- 如何检测表中有无某个字段?
- 无法在视图 'authors_VIEW' 上创建 索引,因为该视图未绑定到架构。
- HELP!急!!!怎样区别NULL值与空值??
- 列转后连接其它表 在线等!!!! 求高手解决!!!
- hery2002(苦*行*僧)请进。。
- com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。
- MSSQL数据库物理文件*.MDF不能附加进数据库,请教各位大侠有何良策!
- sos!!!!!有关SQL SERVER2000数据类型
- 为什么从数据查询出的数据带星期啊 要怎么解决
- SQL2005 实时生成报表
- SQL Contains 和 LIKE 的问题
GO
create table tb(日期 varchar(23))
insert into tb values('2011-01-18 08:56:43.000')
insert into tb values('2011-01-18 08:58:43.000')
insert into tb values('2011-01-18 09:07:43.000')
insert into tb values('2011-01-18 09:09:43.000')
insert into tb values('2011-01-18 09:10:43.000')
insert into tb values('2011-01-18 09:13:43.000')
insert into tb values('2011-01-18 09:17:43.000')
insert into tb values('2011-01-18 09:46:43.000')
insert into tb values('2011-01-18 09:48:43.000')
insert into tb values('2011-01-18 09:47:43.000')
insert into tb values('2011-01-18 09:55:43.000')
go;with cte as
(select ROW_NUMBER()over(partition by left(日期,13),
(datepart(mi,日期)-1)/15 order by 日期) no,* from [tb])
select COUNT(*) from cte where no=1/*
-----------
4
2位都能解决,4楼的扩展行强大一些,但是目前的SQL语句,更适合用2楼的来改。。
谢谢各位了。结贴。