Redis

Redis 笔记(八)-ZSet(有序集合)类型详解

2021-08-09  本文已影响0人  yjtuuige
命令 说明
zadd 添加一个有序集合元素
zcard 返回集合的元素个数
zcount 计算指定区间 score 的成员个数
zlexcount 在有序集合中计算指定字典区间内成员数量
zincrby 给某个特定元素加分 score +
zrange 升序 zrevrange 降序 返回一个范围内的元素
zrangebyscore 排序:按照分数查找一个范围内的元素
zrangebylex 通过字典区间返回有序集合的成员
zrank 返回排名
zrevrank 倒序排名
zrem 移除某一个元素
zremrangebylex 移除有序集合中给定的字典区间的所有成员
zremrangebyrank 移除有序集合中给定的排名区间的所有成员
zremrangebyscore 移除有序集合中给定的分数区间的所有成员
zscan 迭代有序集合中的元素(包括元素成员和元素分值)
zscore 显示某一个元素的分数 score
127.0.0.1:6379> zadd myset 1 one        # 添加一个值
(integer) 1
127.0.0.1:6379> zadd myset 2 two 3 three        # 添加多个值
(integer) 2
127.0.0.1:6379> zrange myset 0 -1
1) "one"
2) "two"
3) "three"
127.0.0.1:6379> zadd salary 3000 xh         # 添加三个用户
(integer) 1
127.0.0.1:6379> zadd salary 5000 li
(integer) 1
127.0.0.1:6379> zadd salary 800 zs
(integer) 1
127.0.0.1:6379> zrangebyscore salary -inf +inf        # 显示全部的用户 从小 -inf 到大 +inf
1) "zs"
2) "xh"
3) "li"
127.0.0.1:6379> zrangebyscore salary -inf +inf withscores      # 显示全部的用户并且附带 score 值
1) "zs"                                                        #   zrangebyscore key min max
2) "800"
3) "xh"
4) "3000"
5) "li"
6) "5000"
127.0.0.1:6379> zrangebyscore salary -inf 3000 withscores      # 显示 score 小于3000 的升序排序
1) "zs"
2) "800"
3) "xh"
4) "3000"
127.0.0.1:6379> zrevrange salary 0 -1 withscores        # 降序,从大到进行排序,并显示 score
1) "li"
2) "5000"
3) "xh"
4) "3000"
5) "zs"
6) "800"
127.0.0.1:6379> zrangebylex salary - +        # 通过字典区间返回所有的成员
1) "zs"
2) "xh"
3) "li"
127.0.0.1:6379> zrangebylex salary - + limit 0 2       # 分页,按索引显示查询结果,从 0 开始,显示 2 条
1) "zs"
2) "xh"
127.0.0.1:6379> zrange salary 0 -1
1) "zs"
2) "xh"
3) "li"
127.0.0.1:6379> zrem salary xh        # 移除有序集合中的指定元素
(integer) 1
127.0.0.1:6379> zrange salary 0 -1
1) "zs"
2) "li"
127.0.0.1:6379> zcard salary          # 获取有序集合中的个数
(integer) 2
127.0.0.1:6379> zadd myset 1 hello 2 world 3 test
(integer) 3
127.0.0.1:6379> zcount myset 1 3        # 获取指定区间的成员数量
(integer) 3
127.0.0.1:6379> zcount myset 1 2
(integer) 2
127.0.0.1:6379> zlexcount myset - +
(integer) 4
127.0.0.1:6379> zadd myset 1 m1 2 m2 3 m3 4 m4
(integer) 4
127.0.0.1:6379> zrange myset 0 -1 withscores
1) "m1"
2) "1"
3) "m2"
4) "2"
5) "m3"
6) "3"
7) "m4"
8) "4"
127.0.0.1:6379> zscore myset m4        # 显示指定元素的分数 scroe
"4"
127.0.0.1:6379> zincrby myset 5 m4        # 将 m4 的 score +5
"9"
127.0.0.1:6379> zscore myset m4
"9"
上一篇下一篇

猜你喜欢

热点阅读