怎么高效查找周数据中的TOP10数据

怎么高效查找周数据中的TOP10数据

如何高效查找周数据中的TOP10数据

问题是这样的

数据表为

游戏ID     用户ID     上传分数   上传时间

每周都有不同的用户对不同的游戏上传自己游戏的分数

要求找出每周每个不同游戏中的分数最高的前10名的记录

请问如何高效的查找呢?

谢谢



try:

select 游戏ID,用户ID,上传分数 from table

where datediff(now(),上传时间) <=7 and 游戏ID= ‘wow ‘

order by 上传分数 desc

limit 0,10




select 游戏ID,用户ID,上传分数 from table

where 上传时间 > unix_timestamp(now()) – 7 * 24 * 3600 and 游戏ID= ‘wow ‘

order by 上传分数 desc

limit 0,10

查询最近7天的wow的积分最高的10个用户。

当然如果你要查询确切的一周的 并且 不在 周末的最后时刻查询那么最好 动态生成 sql

select 游戏ID,用户ID,上传分数 from table

where 上传时间 > unix_timestamp( “周一零点 “) and 上传时间 < unix_timestamp( ‘周末24点 ‘)and 游戏ID= ‘wow ‘

order by 上传分数 desc

limit 0,10

怎么高效查找周数据中的TOP10数据

相关文章:

你感兴趣的文章:

标签云: