Redis 笔记(六)—— ZSET 常用命令
命令 | 用例和描述 |
---|---|
ZADD | ZADD key-name score member [score member ...] —— 将带有分值的成员添加到 HSET 中 |
ZREM | ZREM key-name member [member ...] —— 移除给定成员,并返回移除的数量 |
ZCARD | ZCARD key-name —— 返回有序集合包含的成员数量 |
ZINCRBY | ZINCRBY key-name increment member —— 将 member 成员的分值加上 increment |
ZCOUNT | ZCOUNT key-name min max —— 返回分值介于 min(包含)和 max(包含)之间的成员数量 |
ZRANK | ZRANK key-name member —— 返回成员 member 在有序集合中的排名(从 0 开始) |
ZSCORE | ZSCORE key-name member —— 返回成员 member 的分值 |
ZRANGE | ZRANGE key-name start stop [WITHSCORES] —— 返回排名位于 start 和 stop 之间的成员 |
例子 :
127.0.0.1:6379> zadd zset-key 3 a 2 b 1 c (integer) 3 127.0.0.1:6379> zcard zset-key (integer) 3 127.0.0.1:6379> zincrby zset-key 3 c "4" 127.0.0.1:6379> zscore zset-key b "2" 127.0.0.1:6379> zrank zset-key c (integer) 2 127.0.0.1:6379> zcount zset-key 0 3 (integer) 2 127.0.0.1:6379> zcount zset-key 2 4 (integer) 3 127.0.0.1:6379> zrem zset-key b (integer) 1 127.0.0.1:6379> zrange zset-key 0 -1 withscores 1) "a" 2) "3" 3) "c" 4) "4"
命令 | 用例和描述 |
---|---|
ZREVRANK | ZREVRANK key-name member —— 返回成员member的排名 (逆序,从大到小) |
ZREVRANGE | ZREVRANGE key-name start stop [WITHSCORES] —— 返回给定排名范围内成员(逆序) |
ZRANGEBYSCORE | ZRANGEBYSCORE key min max [WITHSCORES] [LIMIE offset count] —— 返回分值介于 min 和 max 之间的所有成员 |
ZREVRANGEBYSCORE | ZRANGEBYSCORE key min max [WITHSCORES] [LIMIE offset count] —— 返回分值介于 min 和 max 之间的所有成员,并按照分值从小到大排序 |
ZREMRANGEBYRANK | ZREMRANGEBYRANK key start stop —— 移除有序集合中排名在 start 和 stop 的 |
ZREMRANGEBYSCORE | ZREMRANGEBYSCORE key min max —— 移除有序集合中分值在 min 和 max 的 |
ZINTERSTORE | ZINTERSTORE dest-key key-count key [key ...] [WEIGHTS weight] [weight ...]] [AGGREGATE SUM|MIN|MAX] —— 对 HSET 执行类似于集合的交集运算 |
ZUNIONSTORE | ZINTERSTORE dest-key key-count key [key ...] [WEIGHTS weight] [weight ...]] [AGGREGATE SUM|MIN|MAX] —— 对 HSET 执行类似于集合的并集运算 |
例子 :
127.0.0.1:6379> zadd zset-1 1 a 2 b 3 c (integer) 3 127.0.0.1:6379> zadd zset-2 4 b 1 c 0 d (integer) 3 127.0.0.1:6379> zinterstore zset-i 2 zset-1 zset-2 (integer) 2 127.0.0.1:6379> zrange zset-i 0 -1 withscores 1) "c" 2) "4" 3) "b" 4) "6" # ZUNIONSTORE 会对分值进行求和 127.0.0.1:6379> zunionstore zset-u 2 zset-1 zset-2 aggregate min (integer) 4 127.0.0.1:6379> zrange zset-u 0 -1 withscores 1) "d" 2) "0" 3) "a" 4) "1" 5) "c" 6) "1" 7) "b" 8) "2" 127.0.0.1:6379> sadd set-1 a d (integer) 2 # 集合 SET 中的分值当做 1 来处理 127.0.0.1:6379> zunionstore zset-u2 3 zset-1 zset-2 set-1 (integer) 4 127.0.0.1:6379> zrange zset-u2 0 -1 withscores 1) "d" 2) "1" 3) "a" 4) "2" 5) "c" 6) "4" 7) "b" 8) "6"