这篇文章主要介绍“Redis基本数据类型Zset有序集合常用操作实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Redis基本数据类型Zset有序集合常用操作实例分析”文章能帮助大家解决问题。
有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。
不同的是有序集合每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
集合是通过哈希表实现的,所以添加、删除、查找的复杂度都是 O(1)。
将一个或多个成员元素及其分数值加入到有序集当中。分数值可以是整数值或双精度浮点数。
若有序集合 key 不存在,则创建一个空的有序集并执行zadd
操作。
若 key 存在但不是有序集类型时,返回一个错误。
zadd myzset 1 one 1.11 two 3.25 three
返回有序集中,指定区间内的成员。其中成员的位置按分数值递增(从小到大)来排序。
具有相同分数值的成员按字典序(lexicographical order )来排列。
zrange myzset 0 -1
还可以带上分数返回:
zrange myzset 0 -1 WITHSCORES
返回有序集中,指定区间内的成员。其中成员的位置按分数值递减(从大到小)来排列。
zrevrange myzset 0 -1 WITHSCORES
返回有序集合中指定分数区间的成员列表。有序集成员按分数值递增(从小到大)次序排列。
zrangebyscore myzset (1 2 # 这里相当于 1< score <=2
zrangebyscore myzset 1 2 # 这里相当于 1<= score <=2
zrangebyscore myzset -inf +inf # 这里-inf +inf 相当于 负无穷、正无穷,显示出所有
移除有序集中的一个或多个成员,不存在的成员将被忽略。
zrem myzset one three four
用于计算集合中元素的数量。
zcard myzset
用于计算有序集合中指定分数区间的成员数量。
zcount myzset 2 5
还有其他的命令,在使用过程中不清楚可以查看官方文档中的命令查询,非常详尽。
set的使用场景也很丰富,比如可以用来用作排序场景、存储工资表、班级成绩表、xx排行榜等等。
关于“Redis基本数据类型Zset有序集合常用操作实例分析”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。