大家看下如何排序?
排序

解决方案 »

  1.   

    这个问题如果在Oracle,mssql,db2下就方便多了,使用row_number,dense_rank,rank 分析函数
    在MySql下没有,楼主可参考:
    http://bbs.csdn.net/topics/300240370
    http://gzy551536.blog.sohu.com/230943189.html
    http://blog.sina.com.cn/s/blog_5165537f0100ys2b.html
      

  2.   

    确实这种问题在sqlserver都是一个函数的事
      

  3.   

    http://blog.csdn.net/acmain_chm/article/details/4095531
    MySQL中的ROWNUM的实现
    MySQL 几乎模拟了 Oracle,SQL Server等商业数据库的大部分功能,函数。但很可惜,到目前的版本(5.1.33)为止,仍没有实现ROWNUM这个功能。 下面介绍几种具体的实现方法.建立实验环境如下mysql> create table tbl (    ->  id      int primary key,    ->  col     int    -> );Que...
      

  4.   

    第一种
    SET @rn = 0;SELECT *,@rn:=IFNULL(@rn,0)+1 FROM tb ORDER BY score DESC;第二种
    SELECT *,(SELECT COUNT(*) FROM (SELECT * FROM tb GROUP BY score) AS c WHERE c.score>b.score)+1 AS rank FROM tb AS b;第三种
    SELECT *,(SELECT COUNT(*) FROM tb WHERE score>b.score)+1 AS rank FROM tb AS b;