手记

ASP.NET 网站访问统计设计

准备了半年的项目,已经进入后期。现把项目开发中的一些经验分享出来。

如今网站统计第三方服务较多,运营较早的:站长统计我要啦,后来加入的:百度统计、腾讯分析……第三方服务的优点是:功能强大、嵌入方便等,但是在内网环境下就无用武之地。

这样就只能自己写一个简单的功能,虽说简单但是也不是没有要求:按时间段统计(年、月、日)、高效。

精确到日的结构相对来说比较合理,一年最多产生366行数据,十年也才3650多行数据,查询统计量使用SUM函数也会很快。

先着手设计数据库,新建一个表(View)

两个字段:Date(日期)、Value(统计量)


增加访问量,直接上SQL了,你应该懂得

首先尝试更新今天的数据行(如果需要精确到小时就比较时段)

UPDATE [View] SET [Value] = [Value] + 1 WHERE DATEDIFF(DD, [Date], GETDATE()) = 0

如果没有更新成功今天的数据,就插入一条日期为今天、统计量为1的新数据

INSERT INTO [View] ([Date], [Value]) VALUES (GETDATE(), 1)

查询方法,还是SQL,不说你也懂得

总访问量

SELECT SUM([Value]) FROM [View]

本月

SELECT SUM([Value]) FROM [View] WHERE DATEDIFF(MM, [Date], GETDATE()) = 0

今日

SELECT SUM([Value]) FROM [View] WHERE DATEDIFF(DD, [Date], GETDATE()) = 0

附:项目最终效果


感谢阅读!共同交流、进步



作者:DAOSR
链接:https://www.jianshu.com/p/b3aacc4923fb


0人推荐
随时随地看视频
慕课网APP