Redis学习(六)数据存储类型——sorted_set(zset)
程序员文章站
2024-03-01 08:00:58
...
sorted_set的结构
sorted_set的特点
- 支持排序
- value值是唯一的
- 可以存储大量数据
sorted_set的基本操作
添加数据
zadd key score1 member1 score2 member2 ...
获取数据(withscores表达的是是否连scores一起返回)
zrange key start stop [withscores] // 根据score从低到高返回
zreverage key start stop [withscores] // 根据score从高到低返回
删除数据
zrem key member ...
根据score条件获取数据(Limit和sql分页用法一样)
zrangebyscore key min max [withscores] [limit]
zreveragebyscore key min max [withscores]
根据条件删除数据
zremrangebyrank key start stop // 根据下标删除数据
zremrangebyscore key min max // 根据score条件删除数据
获取数据总量
zcard key // 查询key下有多少数据
zcount key min max // 查询key下 score条件有多少数据
集合交集、并集操作
zinterstore destionation numkeys key ...
求交集,结果是相同的value值不变,对应的score相加
zinterstore destionation numkeys key ... [aggregate MAX|MIN|SUM ]
求交集,结果是相同的value值不变,对应的score取最大值|最小值|和
zunionstore destionation numkeys key ... [aggregate MAX|MIN|SUM ]
求并集,结果是相同的value值不变,对应的score取最大值|最小值|和
扩展操作
获取数据对应下标(从0开始)
zrank key member // 正向排序获取下标
zrevrank key member // 反向排序获取下标
score值的获取和修改
zscore key member // 根据key member获取score的值
zincrby key increment member // 根据key member获取的score值+increment
sorted-set注意事项:
- score可以是double类型的值,但是使用double类型的值可能会有丢失精度的风险,建议使用整数
下一篇: retrofit 整体构架认识