TOC
前言
排行榜几乎已经成为互联网应用中的必备模块,特别是游戏领域,它是对某一相关同类事物的客观实力的反映,带有相互之间的比较性质,带有竞争意义。
对于平台来说,可以带来一定的权威性,提高平台影响力。
对于商家来说,可以带来更多的曝光,并对比自身的不足加以改进。
对于用户来说,可以为行动决策做参考,降低相关风险成本。
那么排行榜如何实现?我将结合自身的经验提供一些简单设计思路。
基于mysql
SELECT ORDER BY
对于小型的低频业务系统,mysql已经可以支撑所有的排序需求,类似班级排名,成绩排名都比较好实现。
直接SELECT ORDER BY即可。
SELECT name, score, @rank := @rank + 1 AS rank
FROM device, ( SELECT @rank := 0 )
ORDER BY score DESC
其中@rank := 0是为了在生成查询结果表的时候生成一组递增的序列号
mysql中:=和=的区别
=
只有在set和update时才是和:=一样,用于赋值,其它都情况用作等于判断,1表示真,0表示假。