温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Redis有序集合Zset怎么用

发布时间:2022-01-05 17:42:29 来源:亿速云 阅读:125 作者:小新 栏目:大数据

这篇文章给大家分享的是有关Redis有序集合Zset怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Redis有序集合Zset(sorted set)

和set的区别:在set基础上加上一个score值,之前set是k1 v1 v2 v3,现在zset是k1 score v1 score v2

1.zadd/zrange

zadd 添加元素  

zrange 查看key元素

            withscores 查看元素 分数

127.0.0.1:9736> ZADD zset01 60 v1 70 v2 80 v3 90 v4 100 v5
(integer) 5
127.0.0.1:9736> ZRANGE zset01 0 -1
1) "v1"
2) "v2"
3) "v3"
4) "v4"
5) "v5"
127.0.0.1:9736> ZRANGE zset01 0 -1 withscores 
 1) "v1"
 2) "60"
 3) "v2"
 4) "70"
 5) "v3"
 6) "80"
 7) "v4"
 8) "90"
 9) "v5"
10) "100"

2.zrangebyscore key 开始score 结束score

通过分数查找

(   不包含 

  limit 对结果限制读取,从n 读取m条,类似分页

127.0.0.1:9736> ZRANGEBYSCORE zset01 60 90
1) "v1"
2) "v2"
3) "v3"
4) "v4"
//大于等于60 小于90
127.0.0.1:9736> ZRANGEBYSCORE zset01 60 (90
1) "v1"
2) "v2"
3) "v3"
//从第二条截取2条
127.0.0.1:9736> ZRANGEBYSCORE zset01 60 90 limit 2 2
1) "v3"
2) "v4"

3.zram 删除key中指定值的数据

127.0.0.1:9736> zrem zset01 v5 
(integer) 1
127.0.0.1:9736> ZRANGE zset01 0 -1
1) "v1"
2) "v2"
3) "v3"
4) "v4"
127.0.0.1:9736> ZRANGE zset01 0 -1 withscores
1) "v1"
2) "60"
3) "v2"
4) "70"
5) "v3"
6) "80"
7) "v4"
8) "90"

4. zcard/zcount key score区间/zrank key values值,作用是获得下标值/zscore key 对应值,获得分数

zcard:统计key中值的个数

zcount: 统计 分数阶段中值的个数

zrank 统计key中值所在排名

zscore 统计key中值的分数

127.0.0.1:9736> zcard zset01
(integer) 4
127.0.0.1:9736> zcount zset01 60 80
(integer) 3
127.0.0.1:9736> ZRANK zset01 v4
(integer) 3
127.0.0.1:9736> zscore zset01 v4
"90"

 5.zrevrank key values值,作用是逆序获得下标值

127.0.0.1:9736> zrevrank zset01 v4
(integer) 0
127.0.0.1:9736> zrevrange zset01 0 -1
1) "v4"
2) "v3"
3) "v2"
4) "v1"

6.zrevrangebyscore  从结束分数到开始分数,反转

127.0.0.1:9736> zrevrangebyscore zset01 90 60
1) "v4"
2) "v3"
3) "v2"
4) "v1"

感谢各位的阅读!关于“Redis有序集合Zset怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI