Redis 降順ソート時のスコアのランクを取得する

Redis 降順ソート時のスコアのランクを取得する

Redisで、降順ソート時のスコアのランクを取得する手順を記述してます。「zrevrank」で可能です。昇順で取得する場合は「zrank」を使用します。

環境

  • OS CentOS Stream release 9
  • Redis 7.0.5

手順

降順ソート時のスコアのランクを取得するには、「zrevrank」を使用します。

zrevrank キー名 メンバー名

スコアを設定して、降順でのランクを取得してみます。

127.0.0.1:6379> zadd zs1 1 aaa 3 bbb 5 ccc 2 ddd 9 eee
(integer) 5

各メンバーのランクを取得します。
※「0」から開始されます。

127.0.0.1:6379> zrevrank zs1 aaa
(integer) 4

127.0.0.1:6379> zrevrank zs1 bbb
(integer) 2

127.0.0.1:6379> zrevrank zs1 ccc
(integer) 1

127.0.0.1:6379> zrevrank zs1 ddd
(integer) 3

127.0.0.1:6379> zrevrank zs1 eee
(integer) 0

降順での、ランクが取得されていることが確認できます。

昇順で取得

逆に昇順で取得する場合は「zrank」を使用します。

127.0.0.1:6379> zrank zs1 aaa
(integer) 0

127.0.0.1:6379> zrank zs1 bbb
(integer) 2

127.0.0.1:6379> zrank zs1 ccc
(integer) 3

127.0.0.1:6379> zrank zs1 ddd
(integer) 1

127.0.0.1:6379> zrank zs1 eee
(integer) 4