`

mysql 中根据查询结果排名

 
阅读更多

 

参考:https://blog.csdn.net/t2080305/article/details/82223415

 

table:

CREATE TABLE `t_rakeback_stat` (

  `USER_ID` varchar(10) NOT NULL COMMENT '邀请人(自己)用户ID',

  `USER_NAME` varchar(32) NOT NULL COMMENT '用户名',

  `FRIEND_NUM` int(6) NOT NULL COMMENT '好友数量',

  `RAKEBACK_AMOUNT_TOTAL` decimal(20,8) NOT NULL COMMENT '返佣收益总数量',

  `RAKEBACK_AMOUNT_REMAIN` decimal(20,8) NOT NULL COMMENT '返佣收益剩余数量',

  `RAKEBACK_COIN_CODE` tinyint(4) NOT NULL COMMENT '返佣金额币种',

  `CREATE_TIME` datetime NOT NULL COMMENT '创建时间',

  `UPDATE_TIME` datetime NOT NULL COMMENT '更新时间',

  PRIMARY KEY (`USER_ID`),

  KEY `idx_rank` (`RAKEBACK_AMOUNT_TOTAL`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='邀请返佣统计表';

 

排行榜列表

SELECT
		    temp.userId,
		    temp.userName,
                    temp.rakebackAmountTotal,
		    temp.rank
	    FROM
		    (
		        SELECT
		            ta.user_id AS userId,
                            ta.user_name AS userName,
                            ta.rakeback_amount_total AS rakebackAmountTotal,
		            @index := @index + 1,
		            @rank := (CASE
				WHEN @temp_rakeback_amount_total = ta.rakeback_amount_total THEN @rank
				WHEN @temp_rakeback_amount_total := ta.rakeback_amount_total THEN @index
				WHEN @temp_rakeback_amount_total = 0 OR @temp_rakeback_amount_total IS NULL THEN @index
				END) AS rank
		        FROM
		        (
			    SELECT 
		              	user_id,
				user_name,
		              	rakeback_amount_total 
		            FROM
				t_rakeback_stat 
		          ORDER BY 
				rakeback_amount_total DESC
		        ) AS ta,
		        ( SELECT @rank := 0, @rowtotal := NULL, @index := 0 ) r
		    ) AS temp

 

分享到:
评论

相关推荐

    MySql基本查询、连接查询、子查询、正则表达查询讲解

    6、合并查询结果 7、为表和字段取别名 8、使用正则表达式查询 什么是查询? 怎么查的? 数据的准备如下: [sql] view plain copy create table STUDENT( STU_ID int primary KEY, STU_NAME char(10) not null, ...

    MySQL中给自定义的字段查询结果添加排名的方法

    主要介绍了MySQL中给自定义的字段查询结果添加排名的方法,只需要对counter写一个小算式,非常简单,需要的朋友可以参考下

    MySQL常用练手题目集合 MySQL查询练习题(50题) 共18页.pdf

    要求输出课程号和选修人数,查询结果按人数降序排列, 15 45 -- 44、检索至少选修两门课程的学生学号 15 46 -- 45、查询选修了全部课程的学生信息 15 47 -- 46、查询各学生的年龄 16 48 -- 47、查询本周过生日的学生...

    MYSQL题目练习

    要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列 --44、检索至少选修两门课程的学生学号 --45、查询选修了全部课程的学生信息 --46、查询各学生的年龄 --47、查询本周过生日的...

    Mysql利用group by分组排序

    MySQL的group by与Oracle有所不同,查询得字段可以不用写聚合函数,查询结果取得是每一组的第一行记录。 利用上面的特点,可以利用mysql实现一种独特的排序; 首先先按某个字段进行order by,然后把有顺序的表进行...

    MySQL对window函数执行sum函数可能出现的一个Bug

    使用MySql的窗口函数统计数据时,发现一个小的问题,与大家...查询结果:发现如果同一个课程有相同成绩是,汇总成绩不是累加的,而是一次全部加上去。 创建数据表 CREATE TABLE `Score`( `s_id` VARCHAR(20), `c_id

    毕业设计,基于SpringBoot+Vue+MySql开发的前后端分离的师生社区网站,内含Java完整源代码,数据库脚本

    网格管理员登录后可以查询所有小区建档信息,和所有小区房屋信息,人员信息和车辆信息等,可以管理网络信息,新建任务分配给指定小区负责人,处理批阅评价小区负责人处理任务的结果等。网格员登录系统后可以管理自己...

    基于SSM+mysql的在线考试系统设计与实现(源码+设计文档+部署说明+视频演示).zip

    学生成绩查询:系统提供学生成绩查询功能,学生可以通过系统查询自己的考试成绩和排名等信息。 权限管理:系统可以设置管理员、教师和学生等不同角色的权限,确保不同用户在系统中的权限和操作范围。 数据安全和...

    PHP在线成绩管理系统多用户版

    支持学生信息、老师信息、任课信息、成绩数据的EXCEL导入功能,支持将所有查询结果输出到EXCEL、WORD、PDF进行保存或输出到打印机,支持生成饼状图、直线图便于查询者进行分段统计查看结果。支持"两率一分"查询,支持...

    信息成绩管理系统;才子信息成绩管理系统

    可查询学生单科及总分的年级名次、班级名次,查询结果为静态显示,大大降低用户查询对系统资源的占用,可支持数百 位用户同时进行查询。支持留言,老师可对任班主任和任课的班级或对学校进行留言,学生、学生家长可...

    才子信息学生综合管理系统 v2.0.5 增强版.zip

    支持学生信息、老师信息、任课信息、成绩数据的EXCEL导入功能,支持将所有查询结果输出到EXCEL、WORD、PDF进行保存或输出到打印机,支持生成饼状图、直线图便于查询者进行分段统计查看结果。支持"两率一分"查询,支持...

    才子PHP在线成绩管理系统 v2.0.4.rar

    支持学生信息、老师信息、任课信息、成绩数据的EXCEL导入功能,支持将所有查询结果输出到EXCEL、WORD、PDF进行保存或输出到打印机,支持生成饼状图、直线图便于查询者进行分段统计查看结果。支持"两率一分"查询,支持...

    Java EE常用框架.xmind

    比传统SQL多的功能:查询的结果有相关的排名,可以有高亮显示 存储数据的地方我们称之为索引库 原始记录表 分词表(倒排序表) 使用 将JavaBean对象封装到Document对象中 后通过IndexWriter把...

    成绩管理系统

    支持学生信息、老师信息、任课信息、成绩数据的EXCEL导入功能,支持将所有查询结果输出到EXCEL、WORD、PDF进行保存或输出到打印机,支持生成饼状图、直线图便于查询者进行分段统计查看结果。支持"两率一分"查询,支持...

    才子成绩管理系统永久免费版 v6.0.9.rar

    支持学生信息、老师信息、任课信息、成绩数据的EXCEL导入功能,支持将所有查询结果输出到EXCEL、WORD、PDF进行保存或输出到打印机,支持生成饼状图、直线图便于查询者进行分段统计查看结果。支持"两率一分"查询,支持...

    客户资料管理系统---华软暑假实训资料

    查询成功后,提供将查询出来结果信息以Excel格式导出到本地。 查询成功后,客户管理员选在某个客户信息打印资料,具体打印格式如下: XXXX银行客户信息 开销户日期:XXXX/XX/XX——XXXX/XX/XX 打印日期:XXXX/XX/XX...

    Seckill:ByteCamp 2019高并发高可用秒杀系统设计与实现工程赛道三等奖(字节跳动夏令营营营在6000+中排名前150位,在16位中排名前3位,秒杀赛场排名前1位)

    /结果 查询全部订单 /重置 多轮压测间 整体架构 服务器1:MySQL 服务器2:Nginx,Tomcat 服务器3:Tomcat 服务器4:Tomcat 服务器5:Redis 技术挑战 服务需要支持横向扩容 并发资源争夺:超卖,少卖 服务器并发性能...

    功能非常强大的学生成绩管理系统(VC++6.0 MSQL)

    (3)成绩的综合统计功能,包括学生成绩按照不同条件进行排名,管理人员可以选择不的排序条件,并可以将排序结果进行打印输出; (4)计算每个学生的总成绩、平均成绩,所有学生单科的平均成绩,找出总成绩和单科...

    Recommender:视觉推荐项目的实施

    它提供了类似于Google的查询界面,除了排名列表外,搜索结果还带有可视界面。 可视界面通过根据搜索结果的内容将搜索结果分为不同的群集来提供搜索结果的概述。 可视界面是动态的,可配置的,还可以用于快速导航到...

    低清版 大型门户网站是这样炼成的.pdf

    5.3.6 动态实例化查询结果 313 5.4 qbc查询方式 314 5.4.1 基本查询 315 5.4.2 qbe查询 317 5.4.3 分页查询 318 5.4.4 复合查询 318 5.4.5 离线查询 319 5.5 本地sql查询 320 5.6 hibernate的批量处理 322 ...

Global site tag (gtag.js) - Google Analytics