上手Redis系列(五):超全有序集合Zset类型详解(代码图文示例)
学习Redis五种类型之一的Zset之前,我还是觉得我务必跟你说一声,也是在我文章之中说的很多的一句话,我想也会适用于学习Redis,那就是在接触文章里的Reids命令时,不用试图去记这些命令 ,用到时去看API帮助文档即可;会用了或者实践过了再去了解也不会迟。
上手Redis系列
上手Redis必知必会:最基础知识点和最基本常用操作(代码示例)
上手Redis系列(一):超全String字符串类型详解(代码图文示例)
上手Redis系列(二):超全List列表类型详解(代码图文示例)
上手Redis系列(三):超全集合Set类型详解(代码图文示例)
上手Redis系列(四):超全哈希Hash类型详解(代码图文示例)
上手Redis系列(五):超全有序集合Zset类型详解(代码图文示例)
在Redis中会发现一个有趣的 套路 规律,就是每种类型的命令会由类型的首字母开头。就像看下面的Zset,如果你耐心看下面的命令会发现都会以 Zset 的 Z 开头。
Zset有序集合和集合一样也是string类型元素的集合,不允许重复的成员。
区别是每个元素会关联一个double类型的分数。Zset是通过分数来为集合中的成员进行从小到大排序。
(简单的理解Zset就是比Set多一个值)
有序集合的成员是唯一的,但分数(score)却可以重复。
有序集合添加一个或多个成员,或者更新已存在成员的分数
ZADD key score1 member1 [score2 member2]
获取有序集合的成员数
ZCARD key
通过索引区间返回有序集合指定区间内的成员
ZRANGE key start stop [WITHSCORES]
作为有序集合Zset,排序肯定是最核心的。
下面举个实现Zset排序。
博主****粉丝 的小栗子。
(嘿嘿,你懂的,疯狂暗示)
第一个添加的是 一颗剽悍的种子 的粉丝是54个。
第二个是 小李 粉丝是650个。
第三个是 小明 粉丝是666个。
第四个是 小美 粉丝是888个。
通过分数返回有序集合指定区间内的成员
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]
-inf和+inf显示整个有序集
(有序集成员按分数值递增(从小到大)次序排列)
(一颗剽悍的种子粉丝最少,你懂的,疯狂暗示,嘿嘿)
还可以增加可读性,增加多一个WITHSCORES的参数,带上分数。
还可以指定区间,小于665的粉丝,升序排序。
返回有序集中指定区间内的成员,通过索引,分数从高到低
ZREVRANGE key start stop [WITHSCORES]
(有序集成员按分数值递增(从大到小)次序排列)
移除有序集合中的一个或多个成员
ZREM key member [member …]
最后:
Redis之旅还在继续,Redis上手系列将持续更新!
为了更好的阅读体验,我把想说的话都放在了下面,嘿嘿。
我是一颗剽悍的种子 把我会的,认真的分享 是我写博客一直不变的信条。
如果你能看到这篇博文,说明咱们还是很有缘的;希望能带给你一些许帮助,创作的不易, 把我文章的知识带走,你的三连留下,点赞,评论,关注,是我最大的动力。