redis关于zset的常用命令

zset 主要就是排序,不排序用set,list

1、zadd zsetname num value:在zsetname集合中增加序号为n的value

redis关于zset的常用命令_第1张图片

2、zrange zset2 start end [withscores]:排序指定的rank(排名)范围内的元素并输出

3、zrevrange zset2 start end [withscores]:反向排序

4、zrangebyscore zset2 -inf +inf [withscores]:获取指定的score范围内的元素

     zrangebyscore zsetname -inf 2500  (withscores ):显示score低于2500的元素 (加 withscores 意为捎带显示序号)

redis关于zset的常用命令_第2张图片

redis关于zset的常用命令_第3张图片·

5、zrangebylex zsetname [a [b [limit offset count]:获取a<=x<=b范围的数据,如果分页加上limit

又比如:zrangebylex zsetname (a (b 就表示获取a

6、zincrby setname n value:为score累加n,新元素score基数为0

7、zrem zsetname value:删除zsetname集合中指定的元素

8、zrank zsetname value:查询指定value的排名,注意不是score

redis 127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES # 显示所有成员及score
1) "peter"
2) "3500"
3) "tom"
4) "4000"
5) "jack"
6) "5000"

redis 127.0.0.1:6379> ZRANK salary tom # 显示 tom 的薪水排名,第二
(integer) 1

9、zcard zsetname :获取zsetname集合的元素个数

10、zremrangebyrank setname start end:删除下标在start end 范围内的元素

redis 127.0.0.1:6379> ZADD salary 2000 jack
(integer) 1
redis 127.0.0.1:6379> ZADD salary 5000 tom
(integer) 1
redis 127.0.0.1:6379> ZADD salary 3500 peter
(integer) 1
redis 127.0.0.1:6379> ZREMRANGEBYRANK salary 0 1   # 移除下标 0 至 1 区间内的成员
(integer) 2
redis 127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES  # 有序集只剩下一个成员
1) "tom"
2) "5000"

11、zremrangebyscore setname min max:删除score在[min [max 范围内的元素

redis 127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES # 显示所有成员及score
1) "tom"
2) "2000"
3) "peter"
4) "3500"
5) "jack"
6) "5000"
redis 127.0.0.1:6379> ZREMRANGEBYSCORE salary 1500 3500 # 移除score在1500到3500的员工
(integer) 2
redis> ZRANGE salary 0 -1 WITHSCORES          # 剩下的有序集成员
1) "jack"
2) "5000"

 12、ZREMRANGEBYLEX key min max

redis 127.0.0.1:6379> ZRANGE myzset 0 -1
1) "ALPHA"
 2) "aaaa"
 3) "alpha"
 4) "b"
 5) "c"
 6) "d"
 7) "e"
 8) "foo"
 9) "zap"
10) "zip"
redis 127.0.0.1:6379> ZREMRANGEBYLEX myzset [alpha [omega
(integer) 6
redis 127.0.0.1:6379> ZRANGE myzset 0 -1
1) "ALPHA"
2) "aaaa"
3) "zap"
4) "zip"

你可能感兴趣的:(消息队列,NoSQL,Nginx,redis,数据库,database)