.

案例问答--排行榜中,如何获取排名名次?

老赵发表于:2021年07月30日 16:38:02更新于:2021年08月11日 18:22:55

一、使用权限

数据库功能专业版及以上版本可商用。

二、场景应用

如下图所示,在测试答题、游戏得分等场景中,经常需要用用户的得分去形成【排行榜】。有时,我们需要额外获取当前用户的排名去单独显示,即下图中【我的成绩】。

【排行榜】可以使用表格输出组件制作,教程戳此处。

而【我的成绩】的做法,则需用到触发行为【数据库操作-获取排行数据】

image.png

三、教程准备

如果对数据表的系列教程还不熟悉,可以点此查看数据表视频教程

也可以点此查看我们官网support中的文字系列教程。

四、操作用法

很多用户以为,如果我需要获取当前用户的排名,只需要添加一个以【总分】字段排序的过滤表,之后通过【设置参数值】的方式将【行号】赋值给当前页面的可赋值元素即可。但这样的设置方式是错误的,数据表中的【行号】是一个动态变化的值,无法进行赋值。

如果想获取当前用户的排名,则需要用到触发行为【数据库操作】-【获取排行数据】。步骤如下:

①在工作台的数据表设置中,找到我们希望用来排序的字段,设置用该字段进行排序。

升序:由低到高

降序:由高到低

image.png

②点击保存,回到编辑器页面,在过滤表中,找到自己想要进行排序的某个表,进行相同的设置。

正序:由低到高

反序:由高到低

image.png

③找到自己所设置的排行榜的那一页。

获取某个用户的排名序号数字的思路是,先想办法获取到用户这一行数据的数据id,并存储到全局变量中。之后通过【数据库操作】—【获取排行数据】的方式,将这一行数据的序号赋值给当前页面的某个可赋值元素。

image.png

④设置完成。


--------- 不了解设计的程序员不是好客服 ---------------