redis数据类型sorted_set类型

本文介绍如何使用sorted_set数据结构进行数据的有序存储与高效检索,涵盖基本操作如添加、删除、按条件获取数据等,适用于投票、聊天室及各类排行榜场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

新需求:有序展示
需要的存储结构:可以保存可排序的数据
sorted_set类型:在set的存储结构基础上添加可排序字段
基本操作
添加数据
zadd key score1 member1 [score2 member2]
获取全部数据
zrange key start stop [WITHSCORES]
zrevrange key start stop [WITHSCORES]
删除数据
zrem key member [member…]
按照条件获取数据
zrangebyscore key min max [withscores] [limit offset count]
zrevrangebyscore key max min [withscores]
条件删除数据
zremrangebyrank key start stop
zremrangebyscore key min max
注意:min与max用于限定搜索查询的条件
start与stop指的是索引,以0开始
offset与count类似于mysql的limit
获取几个数据总量
zcard key
zcount key min max
集合交,并操作
zinterstore destination numkeys(要求集合交集的集合数) key [key…]
zunionstore destination numkeys key [key…]
业务场景
投票排序,聊天室排序,各种top10排序
解决方案
获取数据对应的索引(排名)
zrank key member
zrevrank key member
score值获取,修改
zscore key member
zincrby key increment member
应用于计数器组合排序功能对应的排名
注意事项
Score保存的数据有范围
score保存的数据可以是一个双精度的double值
Sorted_set底层存储还是基于set结构,因此数据不能重复
可以应用于定时任务执行顺序管理或任务过期管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值