mysql 排名

mysql 总积分排名

表名:dc_game_result

结构如下:


表数据如下:



要求:查找所有用户(user_name)的总积分(total_integral),对总积分进行排名.

sql语句如下:

SELECT (SELECT COUNT(C.USER_NAME) + 1
          FROM (SELECT USER_NAME, SUM(TOTAL_INTEGRAL) TOTAL_INTEGRAL
                  FROM DC_GAME_RESULT
                 GROUP BY USER_NAME) C
         WHERE C.TOTAL_INTEGRAL > A.TOTAL_INTEGRAL) AS 名次,
       A.USER_NAME,
       A.TOTAL_INTEGRAL
  FROM (SELECT USER_NAME, SUM(TOTAL_INTEGRAL) TOTAL_INTEGRAL
          FROM DC_GAME_RESULT
         GROUP BY USER_NAME) A order by TOTAL_INTEGRAL desc;
 

查询结果:


猜你喜欢

转载自xurichusheng.iteye.com/blog/1606229