请教 统计各个论坛版块每天发帖量的表设计
主要用到 4个字段
ID:自增ID int;
boards:论坛编号 int;
posts:当天的发帖数 int;
postday:当天的时间 datetime;
这些数据可能会在以后统计 版块的月排行、周排行、年排行等用到求和排序
想在boards和postday上做索引
因为postday类型是datetime,datediff 不能利用到索引,求教postday这个字段要如何设计?目前值 都是yy-mm-dd 00:00:00 这样的
另外自增id这个字段 是否可以不用?
前辈们有更好的解决方案么?请指教!
[解决办法]
大致思路:
declare @StartDate datetime, @EndDate datetimeset @StartDate=CAST(CONVERT(varchar(10),GETDATE(),120)+' 00:00:00' as datetime)set @EndDate=DATEADD(DAY,1,@StartDate)select @StartDate,@EndDateselect boards,SUM(posts) from table where postday>=@StartDate and postday<@EndDate group by boards--这样就可以在postday上加索引了。
[解决办法]
不用datediff 直接用>=或者<=这样的来规范范围
还有dateaddd可以用的,。