Reids中的有序集合Zset

有序集合(ZSet)

常用命令

命令 作用
zadd key score member 添加元素
zrevrange key start stop [withscores] 遍历从大到小元素
zrange key start stop [withscores] 遍历从小到大元素
zrangebyscore/zrevrangebyscore key min max [ withscores] [ LIMIT offset count] 获取从小到大或者从大到小指定范围的元素
zscore key 获取元素分数
zcard key 获取集合中元素的数量
zrem key 某个score下对于的value值 删除元素
zincrby key increment member 增加某个元素的分数
zcount key min max 获得指定分数范围内的元素个数
zmpop 从键名列表中的第一个非空排序集中弹出一个或者多个元素
zrank key values值 获取下标值
zrevrank key values值 逆序获得下标

zadd

添加信息

127.0.0.1:6379> 
127.0.0.1:6379> zadd zset1 60 v1 70 v2 80 v3 90 v4 100 v5
(integer) 5

zrevrange

遍历从大到小

127.0.0.1:6379> zrevrange zset1 0 -1 withscores
 1) "v5"
 2) "100"
 3) "v4"
 4) "90"
 5) "v3"
 6) "80"
 7) "v2"
 8) "70"
 9) "v1"
10) "60"

zrange

遍历从小到大

127.0.0.1:6379> zrange zset1 0 -1 withscores
 1) "v1"
 2) "60"
 3) "v2"
 4) "70"
 5) "v3"
 6) "80"
 7) "v4"
 8) "90"
 9) "v5"
10) "100"

zrangebyscore/zrevrangebyscore

获取从小到大或者从大到小指定范围的元素

127.0.0.1:6379> zrange zset1 0 -1 withscores
 1) "v1"
 2) "60"
 3) "v2"
 4) "70"
 5) "v3"
 6) "80"
 7) "v4"
 8) "90"
 9) "v5"
10) "100"
127.0.0.1:6379> zrangebyscore zset1 60 90 
1) "v1"
2) "v2"
3) "v3"
4) "v4"
127.0.0.1:6379> zrangebyscore zset1 60 90 withscores
1) "v1"
2) "60"
3) "v2"
4) "70"
5) "v3"
6) "80"
7) "v4"
8) "90"
127.0.0.1:6379> zrangebyscore zset1 (60 90 withscores
1) "v2"
2) "70"
3) "v3"
4) "80"
5) "v4"
6) "90"
127.0.0.1:6379> zrangebyscore zset1 (60 90 withscores limit 0 2
1) "v2"
2) "70"
3) "v3"
4) "80"

zscore

获取元素的分数

127.0.0.1:6379> zscore zset1 v5
"100"

zcard

获取集合中元素的数量

127.0.0.1:6379> zcard zset1
(integer) 5

zrem

删除元素

127.0.0.1:6379> zrem zset1 v5
(integer) 1

zincrby

增加某个元素的分数

127.0.0.1:6379> zincrby zset1 3 v1
"63"

zcount

获得指定分数范围内的元素个数

127.0.0.1:6379> zcount zset1 60 90
(integer) 4

zmpop

从键名列表中的第一个非空排序集中弹出一个或者多个元素

127.0.0.1:6379> zmpop 1 zset1 min count 1
1) "zset1"
2) 1) 1) "v1"
      2) "63"
127.0.0.1:6379> zrevrange zset1 0 -1
1) "v4"
2) "v3"
3) "v2"

zrank /zrevrank

zrank key values值 获取下标值

zrevrank key values值 逆序获得下标

127.0.0.1:6379> zrange zset1 0 -1
1) "v2"
2) "v3"
3) "v4"
127.0.0.1:6379> zrank zset1 v2
(integer) 0
127.0.0.1:6379> zrevrank zset1 v2
(integer) 2

猜你喜欢

转载自blog.csdn.net/m0_69044845/article/details/129759932