命令 | 用例和描述 |
---|---|
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"