Redis中的Sorted Set(有序集合)是一种有序的、不重复的数据结构。Sorted Set中的每个成员都与一个分数(score)关联,通过分数可以对成员进行排序。以下是Redis中Sorted Set类型的一些常见命令:
-
ZADD key [NX|XX] [CH] [INCR] score member [score member …]:将一个或多个成员添加到有序集合中,并指定对应的分数。
示例:
ZADD mysortedset 1.5 member1 2.0 member2
可选参数:
- NX:只在成员不存在时才添加。
- XX:只在成员已经存在时才更新。
- CH:返回更新的成员数量。
- INCR:通过增加指定的分数,对成员进行递增操作。
-
ZCARD key:获取有序集合中的成员数量。
示例:
ZCARD mysortedset
-
ZSCORE key member:获取有序集合中指定成员的分数。
示例:
ZSCORE mysortedset member1
-
ZINCRBY key increment member:增加有序集合中指定成员的分数,并返回增加后的分数。
示例:
ZINCRBY mysortedset 2.5 member1
-
ZREM key member [member …]:从有序集合中移除一个或多个成员。
示例:
ZREM mysortedset member1 member2
-
ZRANK key member:获取有序集合中指定成员的排名(从低到高)。
示例:
ZRANK mysortedset member1
-
ZREVRANK key member:获取有序集合中指定成员的排名(从高到低)。
示例:
ZREVRANK mysortedset member1
-
ZRANGE key start stop [WITHSCORES]:按照排名范围获取有序集合中的成员。
示例:
ZRANGE mysortedset 0 2 WITHSCORES
-
ZREVRANGE key start stop [WITHSCORES]:按照排名范围获取有序集合中的成员(逆序)。
示例:
ZREVRANGE mysortedset 0 2 WITHSCORES
-
ZCOUNT key min max:获取有序集合中分数在指定范围内的成员数量。
示例:
ZCOUNT mysortedset 1 3