在线求一条sql
表:
id(主) title(标题) addtime(发表时间) count(顶数)
条件:
查询前20天内顶数最高的20篇内容,倒序排列,并且查最高里面的前三篇内容的title.
效果如下:
日期 |顶数合
2012-3-18 |10000
1.title1
2.title2
2012-3-17 |5555
1.title1
2.title2
2012-3-16 |333
1.title1
2.title2
2012-3-15 |222
2012-3-14 |111
2012-3-13 |10
........
[解决办法]
--如果不需要按照title分组求count--查询前20天内顶数最高的20篇内容,倒序排列 select top 20 title , [count] from tb where datediff(dd,addtime,getdate()) <= 20order by [count] desc--查询前20天内顶数最高的3篇内容,倒序排列 select top 3 title , [count] from tb where datediff(dd,addtime,getdate()) <= 20order by [count] desc
[解决办法]
select max(id) as id,CONVERT(varchar(10),[addtime],120)as [addtime], sum([count]) as [count] from [tbl]where datediff(dd,[addtime],GETDATE())<=20group by CONVERT(varchar(10),[addtime],120)order by [count] desc