首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

在线求一条sql解决方案

2012-03-30 
在线求一条sql表:id(主)title(标题)addtime(发表时间)count(顶数)条件:查询前20天内顶数最高的20篇内容,倒

在线求一条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
........



[解决办法]

SQL code
--如果不需要按照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
[解决办法]
SQL code
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 

热点排行
Bad Request.