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