前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Sorted Set】Redis常用数据类型: ZSet [使用手册]

【Sorted Set】Redis常用数据类型: ZSet [使用手册]

作者头像
.29.
发布2023-11-24 10:57:46
2670
发布2023-11-24 10:57:46
举报
文章被收录于专栏:个人技术博客个人技术博客
在这里插入图片描述
在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~

在这里插入图片描述
在这里插入图片描述

⑤Redis Zset 操作命令汇总


  • Zset和set一样都是String类型的不可重复集合,但是有序的
  • ZSet集合是通过哈希表实现的,添加、删除、查找的复杂度都是O(1)
  • 每个元素都会关联一个double类型的分数,以此为集合成员进行由小到大的排序

快速理解:

Zset就是在set的基础上,每个值前加一个分数值 之前set是k1 v1 v2 现Zset是k1 score1 v1 score2 v2

1. zadd 添加或更新一个或多个成员

zadd key score member [score member ...]

代码语言:javascript
复制
# 有序集合z1,成员a b c分数值分别为10 20 30
zadd z1 10 a 20 b 30 c

在这里插入图片描述
在这里插入图片描述
2. zrange 返回指定区间范围的有序集合成员

zrange key start stop [WITHSCORES]

代码语言:javascript
复制
# 获取指定区间范围的有序集合成员,0值-1代表所有范围
 zrange z1 0 -1
# withscores可选参数,可将成员的分数值一并输出
 zrange z1 0 -1 withscores
在这里插入图片描述
在这里插入图片描述
3. zrevrange 根据分数从高到低,返回指定区间范围的有序集合成员

zrevrange key start stop [WITHSCORES]

代码语言:javascript
复制
# 根据分数从高到低,获取指定区间范围的有序集合成员,0值-1代表所有范围
 zrevrange z1 0 -1
# withscores可选参数,可将成员的分数值一并输出
 zrevrange z1 0 -1 withscores

在这里插入图片描述
在这里插入图片描述
4. zrangebyscore 获取指定分数范围的成员

zrangebyscore key min max [WITHSCORES] [LIMIT offset count]

代码语言:javascript
复制
# 获取指定分数值范围的有序集合成员
 zrangebyscore z1 10 30
# (10 30即:10值30范围但不包含10
 zrangebyscore z1 (10 30
 # 10 (30即:10值30范围但不包含30
 zrangebyscore z1 10 (30
 # withscores可选参数,可将成员的分数值一并输出
 zrangebyscore z1 10 30 withscores

在这里插入图片描述
在这里插入图片描述
5. zscore 获取指定成员的分数值

zscore key member

代码语言:javascript
复制
# 获取有序集合z1中指定成员的分数值
zscore z1 a
zscore z1 b
zscore z1 c

在这里插入图片描述
在这里插入图片描述
6. zcard 获取集合中成员的数量

zcard key

代码语言:javascript
复制
# 获取有序集合z1中成员的个数
zcard z1

在这里插入图片描述
在这里插入图片描述
7. zrem 移除有序集合中一个或多个成员

zrem key member [member ...]

代码语言:javascript
复制
# 移除有序集合z1中指定的成员
zrem z1 a b

在这里插入图片描述
在这里插入图片描述
8. zincrby 为指定成员的分数值添加增量

zincrby key increment member

代码语言:javascript
复制
# 为有序集合Z1成员c的分数值添加增量36,返回运算后的分数值
zrem z1 a b

在这里插入图片描述
在这里插入图片描述
9. zcount 获取指定分数范围内的成员数量

zcount key min max

代码语言:javascript
复制
# 获取指定分数范围内的成员数量
zcount z1 30 70

在这里插入图片描述
在这里插入图片描述
10. zmpop 从有序集合中移除第一个非空排序集合(可设置数量)

zmpop numkeys key [key ...] MIN|MAX [COUNT count]

代码语言:javascript
复制
# zmpop 移除个数 有序集合 min|max count 限制数
 zmpop 1 z1 min count 1

在这里插入图片描述
在这里插入图片描述
11. zrank 获取指定成员的下标索引

zrank key member

代码语言:javascript
复制
# 获取z1中指定成员的下标索引
zrank z1 cpp
zrank z1 java

在这里插入图片描述
在这里插入图片描述
12. zrevrank 逆序地获取指定成员的下标索引

zrevrank key member

代码语言:javascript
复制
# 逆序获取z1中指定成员的下标索引
zrevrank z1 cpp
zrevrank z1 java

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ⑤Redis Zset 操作命令汇总
    • 1. zadd 添加或更新一个或多个成员
      • 2. zrange 返回指定区间范围的有序集合成员
        • 3. zrevrange 根据分数从高到低,返回指定区间范围的有序集合成员
          • 4. zrangebyscore 获取指定分数范围的成员
            • 5. zscore 获取指定成员的分数值
              • 6. zcard 获取集合中成员的数量
                • 7. zrem 移除有序集合中一个或多个成员
                  • 8. zincrby 为指定成员的分数值添加增量
                    • 9. zcount 获取指定分数范围内的成员数量
                      • 10. zmpop 从有序集合中移除第一个非空排序集合(可设置数量)
                        • 11. zrank 获取指定成员的下标索引
                          • 12. zrevrank 逆序地获取指定成员的下标索引
                          相关产品与服务
                          云数据库 Redis
                          腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档