Mysql数据分组排名实现的示例分析

技术Mysql数据分组排名实现的示例分析Mysql数据分组排名实现的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.数据源2.数据

关系型数据库数据分组排名实现的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1.数据源

Mysql数据分组排名实现的示例分析

2.数据整体排名

1)普通排名

从一开始,按照顺序一次往下排(相同的值也是不同的排名)。

set @ rank=0;

挑选

城市,

得分,

@rank:=@rank 1rank

fromcs

orderbyscoredesc结果如下:

Mysql数据分组排名实现的示例分析

2)并列排名

相同的值是相同的排名(但是不留空位)。

设置@rank=0,@ price=null

选择。*,

casewhen @ price=scorethen @ rank

当@ price:=scorethen那么@rank:=@rank 1endrank

fromcsorderbyscoredesc

-当查询的得分值=@价格时,输出@rank,

-当不等时,将得分值赋给@价格,并输出@rank:=@rank 1

-或者

设置@rank=0,@ price=null

挑选

城市、分数、排名

(选择项。*,

@rank:=if(@p=score,@rank,@rank 1)rank,

@ p:=分数

fromcs

order by core desc)a;结果如下:

Mysql数据分组排名实现的示例分析

3)并列排名

相同的值是相同的排名(但是留空位)。

set@rank=0,@price=null,@ z=1;

挑选

城市、分数、排名

(选择

cs .*,

@rank:=if(@p=score,@rank,@z)rank,

@ p:=分数,@z:=@z 1

fromcs

order by core desc)a;结果如下:

Mysql数据分组排名实现的示例分析

3.数据分组后组内排名

1)分组普通排名

从一开始,按照顺序一次往下排(相同的值也是不同的排名)。

set@rank=0,@ c=null

挑选

cs.city,cs.score,

@rank:=if(@c=city,@rank 1,1)rank,

@ c:=城市

fromcs

orderbycs.city,cs.score结果如下:

Mysql数据分组排名实现的示例分析

2)分组后并列排名

组内相同数值排名相同,不占空位。

set@rank=0,@c=null,@ s=null

挑选

cs.city,cs.score,

@rank:=if(@c=city,if(@s=score,@rank,@rank 1),1)rank,

@ c:=城市,

@ s:=分数

fromcs

orderbycs.city,cs.score结果如下:

Mysql数据分组排名实现的示例分析

3)分组后并列排名

组内相同数值排名相同,需要占空位。

set@rank=0,@c=null,@ s=null

挑选

cs.city,cs.score,

@rank:=if(@c=city,if(@s=score,@rank,@rank 1),1)rank,

@ c:=城市,

@ s:=分数

fromcs

orderbycs.city,cs.score结果如下:

Mysql数据分组排名实现的示例分析

4.分组后取各组的前两名

方法一:按照分组排名的三种方式,然后限定排名的值

set@rank=0,@z=0,@c=null,@ s=null

selecta.city,a.score,a.rankfrom

(选择

cs.citycity,cs.scorescore,

@z:=if(@c=city,@z 1,1),

@rank:=if(@c=city,if(@s=score,@rank,@z),1)rank,

@ c:=城市,

@ s:=分数

fromcs

orderbycs.city,cs.scoredesc)a

哪里?秩=2;结果如下:

Mysql数据分组排名实现的示例分析

内部查询

从乡村基中选择*

哪里(

从列表中选择计数(*)项

其中c . city=cs。城市和c . scorcs。分数)2

按城市排序,分数描述结果如下:

Mysql数据分组排名实现的示例分析

上述代码的执行原理如下图:

Mysql数据分组排名实现的示例分析

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/60903.html

(0)

相关推荐

  • 早餐有哪些,你们那的早餐什么最好吃

    技术早餐有哪些,你们那的早餐什么最好吃我在内蒙古呼和浩特呆了12年,已经习惯内蒙的早点,内蒙的早点相对于我老家江苏来说比较粗狂,拿东北人的话来说就是基本是硬早点,如果说内蒙的早点最有特色的我给大家推荐三种我个人认为最能代

    生活 2021年10月27日
  • FastDFS搭建

    技术FastDFS搭建 FastDFS搭建拉取镜像docker pull morunchang/fastdfs运行tracker
    docker run -d --name tracker --net=h

    礼包 2021年12月6日
  • 香港云与VPS的区别云服务器香港

    技术香港云与VPS的区别云服务器香港任何稳运行的网站都需要的云服务器与VPS服务器平台的基石。如果不了解这些云服务器和VPS,选择合适的网络托管类型可能既乏味又耗时。下面就来简单介绍一下二者的区别什么是香港云服务器? 云

    礼包 2021年12月17日
  • 基于spark的数据质量评估(大数据巡检系统)

    技术基于Spark的公安大数据实时运维技术怎么使用本篇内容主要讲解“基于Spark的公安大数据实时运维技术怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于Spark

    攻略 2021年12月14日
  • 氯化钙是沉淀吗,氯化钙静止时间长会不会产生沉淀

    技术氯化钙是沉淀吗,氯化钙静止时间长会不会产生沉淀不会与氯化钙的密度一类的有关了,温度啊,通风情况啊,都有一定的关系,与CO2加入石溶液是一样的道理氯化钙是沉淀吗。 CO2与SO2加入水中会生成碳酸和亚硫酸,酸与盐反应生

    生活 2021年10月20日
  • Python基础知识-1.7标识符和关键字

    技术Python基础知识-1.7标识符和关键字 Python基础知识-1.7标识符和关键字一、标识符上图看完了,那什么是标识符
    答:在程序中定义的一些符号和名称
    二、作用
    前面学习变量了,下面的代码,此

    礼包 2021年12月5日