十三、Redis五大数据类型之五Zset

it2023-01-23  53

Zset类型(有序集合)

在之前的四个类型中都不支持排序的,下来咱们看的Zset类型是既支持存储大数据,也支持排序功能

1.Zset类型基本操作

添加数据:zadd key score member

获取数据:zrange key start stop | zrevrange key start stop

删除数据:zrem key member

按条件获取数据:zrangebyscore key min max limit | zrevrangescore key max min

条件删除数据:zremrangebyrank key start stop | zremrangebyscore key min max

获取集合数据总量:zcard key | zcount key min max

集合交、并操作:zinterstore destination numkeys key | zunionstore destination numkeys key

获取数据对应的索引:zrank key member | zrevrank key member

socre值获取与修改:zscore key member | zincrby key increment member

2.Zset类型的操作配置

案例思路:set 排序 存储班级成绩表,工资表排序! 普通消息,1, 重要消息 2,带权重进行判断! 排行榜应用实现,取Top N 测试!

127.0.0.1:6379> zadd myset 1 one # 添加一个值 127.0.0.1:6379> zadd myset 2 two 3 three # 添加多个值 127.0.0.1:6379> ZRANGE myset 0 -1 ########################################################################## 排序如何实现 127.0.0.1:6379> zadd salary 2500 zhangsan # 添加三个用户 127.0.0.1:6379> zadd salary 5000 wangwu 127.0.0.1:6379> zadd salary 500 lisi # ZRANGEBYSCORE key min max 127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf # 显示全部的用户 从小到大! 127.0.0.1:6379> ZREVRANGE salary 0 -1 # 从大到进行排序! 127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf withscores # 显示全部的用户并且附带成绩 127.0.0.1:6379> ZRANGEBYSCORE salary -inf 2500 withscores # 显示工资小于2500员工的升序排序! ########################################################################## # 移除rem中的元素 127.0.0.1:6379> zrange salary 0 -1 127.0.0.1:6379> zrem salary lisi # 移除有序集合中的指定元素 127.0.0.1:6379> zrange salary 0 -1 127.0.0.1:6379> zcard salary # 获取有序集合中的个数 ########################################################################## 127.0.0.1:6379> flushdb

127.0.0.1:6379> zadd myset 1 hello 127.0.0.1:6379> zadd myset 2 world 3 sj 127.0.0.1:6379> zcount myset 1 3 # 获取指定区间的成员数量! 127.0.0.1:6379> zcount myset 1 2

最新回复(0)