Redis五种数据类型(ZSet)

有序集合

简介

1、Redis有序集合和集合一样也是String类型元素的集合,且不允许重复的成员

2、不同的是每一个元素都会关联一个double类型的分数,redis整数通过分数来为集合中的成员进行从小到大的排序;

3、有序集合的成员是唯一的,但分数(score)却可以重复;

4、集合是通过哈希表实现的。集合中最大的成员数为2的32次方 - 1(4294967295,每个集合可以存储40多亿个成员),Redis的ZSet是有序的、且不重复的;(很多时候,我们都将redis中的有序集合叫做zsets,这是因为在redis中,有序集合相关的操作指令都是以z开头的)


命令

复制语法:
ZADD key score1 member [score2 member2]:向有序集合添加一个或多个成员,或者更新已存在成员的分数;
取值语法:
ZCARD key:获取有序集合的成员数
ZCOUNT key min max:计算在有序集合中指定区间分数的成员数
ZRANGE key member:返回有序集合中指定成员的索引
ZRANGE key start stop [WITHSCORES]:通过索引区间返回有序集合中指定区间的成员(低到高)
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]:通过分数返回有序集合指定区间内的成员
ZREVRANGE key start stop [WITHSCORES]:返回有序集合中指定区间内的成员,通过索引,分数从高到低;
ZREVRANGEBYSCORE key max min [WITHSCORES]:返回有序集合指定分数区间内的成员,分数从高到低排序;

删除语法:
DEL key:移除集合
ZREM key member [member ...]:移除有序集合中的一个或多个成员;
ZREMRANGEBYRANK key start stop:移除有序集合中给定的排名区间的所有成员(第一是0)(低到高排序)
ZREMRANGEBYSCORE key min max:移除有序集合中给定的分数区间的所有成员

ZINCRBY key increment member:增加member元素的分数increment,返回值是更改后的分数

应用场景

常应用于:排行榜

销量排名,积分排名等

猜你喜欢

转载自www.cnblogs.com/lililixuefei/p/13204758.html