zset 是 Redis 提供的最具特色的数据类型之一,首先它是一个 set,这保证了内部 value 值的唯一性,其次它给每个 value 添加了一个 score(分值)属性,通过对分值的排序实现了有序化。比如用 zset 结构来存储学生的成绩,value 值代表学生的 ID,score 则是的考试成绩。我们可以对成绩按分数进行排序从而得到学生的的名次。
下面列出了 zset 的常用命令,如下所示:
命令 | 说明 |
---|---|
ZADD | 用于将一个或多个成员添加到有序集合中,或者更新已存在成员的 score 值 |
ZCARD | 获取有序集合中成员的数量 |
ZCOUNT | 用于统计有序集合中指定 score 值范围内的元素个数 |
ZINCRBY | 用于增加有序集合中成员的分值 |
ZINTERSTORE | 求两个或者多个有序集合的交集,并将所得结果存储在新的 key 中 |
ZRANGE | 返回有序集合中指定索引区间内的成员数量 |
ZRANGEBYLEX | 返回有序集中指定字典区间内的成员数量 |
ZRANGEBYSCORE | 返回有序集合中指定分数区间内的成员 |
ZRANK | 返回有序集合中指定成员的排名 |
ZREM | 移除有序集合中的一个或多个成员 |
ZREMRANGEBYRANK | 移除有序集合中指定排名区间内的所有成员 |
ZREMRANGEBYSCORE | 移除有序集合中指定分数区间内的所有成员 |
ZREVRANGE | 返回有序集中指定区间内的成员,通过索引,分数从高到低 |
ZREVRANK | 返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序 |
ZSCORE | 返回有序集中,指定成员的分数值 |
ZUNIONSTORE | 求两个或多个有序集合的并集,并将返回结果存储在新的 key 中 |