加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

mysql中实现排行的方法

发布时间:2022-03-03 17:15:29 所属栏目:编程 来源:互联网
导读:mysql中实现排名的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧! mysql中实现排名的方法:使用demo函数,语法为【SELECT banji,avg(score) as AvgS FROM table
      mysql中实现排名的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
 
      mysql中实现排名的方法:使用demo函数,语法为【SELECT banji,avg(score) as AvgS FROM table_test GROUP BY banji ORDER BY AvgS   DESC】。
 
      mysql中实现排名的方法:
 
可用Demo实现
 
注意里面的A,属于嵌套查询,所以排名会正确。
 
FROM
(
     SELECT A.*,@rank:=@rank+1 as pm
     FROM
     (
      SELECT banji,avg(score) as AvgS FROM table_test GROUP BY banji  ORDER BY AvgS   DESC
     ) A ,(SELECT @rank:=0) B
) M
ORDER BY M.banji
如果里面没有子查询,使用下面的SQL,那么排序会出错。出错的取决于GROUP BY 是否有多于一条的分组。
 
SELECT banji,avg(score) as AvgS ,@rank:=@rank+1 as pm
FROM table_test A,(SELECT @rank:=0) B
GROUP BY banji
ORDER BY AvgS   DESC
    
      感谢各位的阅读!看完上述内容,你们对mysql中实现排名的方法大概了解了吗?

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读