GetRank

格式

GetRank(isAscending,Num,minValue,maxValue)

只有服务器脚本可访问

Yields
暂停调用该函数的Lua线程,直到准备好返回结果为止,而不会中断其他脚本

简介

GetRank函数可以查询按一定顺序排列的前Num条数据,并返回查询结果。

minValue和maxValue是可选参数,可以不设置,此时就是从整个RankDataStore里返回前Num条数据。如果设置了minValue和maxValue,则从RankDataStore在minValue和maxValue之间的数据中返回前Num条数据。若设置的maxValue小于minValue,则会报错。

参数

名称 类型 默认值 描述
isAscending bool 是否升序排列
Num int 正整数,返回数据的条数
minValue int 返回数据的最小值,过滤掉小于minValue的value
maxValue int 返回数据的最大值,过滤掉大于maxValue的value

返回值

类型 描述
table 查询排名的结果

实例

在发布后的地图或游戏中,将多条新数据存进排名存储里然后获取。

local datastoreservice = GetService("DataStoreService") -- 获取数据存储服务
local goldStore = datastoreservice:FindRankDataStore("RankDataTest")

goldStore:Set("player_000001",100)--存储数据
goldStore:Set("player_000002",101)
goldStore:Set("player_000003",104)
goldStore:Set("player_000004",106)
goldStore:Set("player_000005",103)

local goldnumber = goldStore:GetRank(true, 3)--获取按升序排序的前3条数据

for k,v in pairs(goldnumber) do
    print(v.Key..":"..tostring(v.IntValue))
end
文档更新时间: 2020-09-12 11:50   作者:安彤琛