千家信息网

Redis有序集合类型的常用命令整理

发表于:2025-01-29 作者:千家信息网编辑
千家信息网最后更新 2025年01月29日,这篇文章主要讲解了"Redis有序集合类型的常用命令整理",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Redis有序集合类型的常用命令整理"吧!Red
千家信息网最后更新 2025年01月29日Redis有序集合类型的常用命令整理

这篇文章主要讲解了"Redis有序集合类型的常用命令整理",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Redis有序集合类型的常用命令整理"吧!

Redis常用命令整理有序集合类型

增加元素

zadd key score member [ score member ...... ]

zadd 命令用来向有序集合中加入一个元素和该元素的分数,如果该元素已经存在,则会用新的分数替换原有的分数。zadd命令的返回值是新加入到集合中的元素个数(不包含之前已经存在的元素)


获得元素的分数

zscore key member

返回为member 成员的 score 值,以字符串形式表示。


获得排名在某个范围的元素列表

zrange key start stop [ withscores ]

zrange 命令会按照元素分数从小到大的顺序返回索引从 start 到 stop 之间的所有元素(包含两端的元素)。zrange 命令和 lrange 命令十分相似,如索引都是从0开始,负数代表从后向前查找(-1 表示最后一个元素)。如果需要同时获得元素的分数的话,可以在zrange 命令的尾部加上 widthscores 参数

注:如果两个元素的分数相同,redis会按照字典顺序(即 0<9

zrevrange key start stop [ withscores ]

zrevrange 命令和 zrange 的唯一不同在于 zrevrange 是按照元素分数从大到小的顺序给定结果的


获得指定分数范围内的元素

zrangebyscore key min max [ withscores ] [ limit offset count ]

该命令按照元素分数从小到大的顺序返回分数在 min 到 max 之间(包含 min 和max 的元素)

如果希望分数范围不包含端点值,可以在分数前加上 "(" 符号,例如:希望返回80分到100分的的数据,可以包含80分单不包含100分

命令:zrangebyscore scoreboard 80 (100 widthscores

min 和 max 还支持无穷大,同 zadd 命令一样,-inf 和 +inf 分别表示负无穷大和正无穷大。比如希望得到所有分数高于 80分(不包含80分)的人的名单,但是却不知道最高分是多少,这是就可以使用 +inf zrangebyscore scoreboard (80 +inf


命令 limit offset count 与 SQL 中的用法基本相同,即在获得的元素列表的基础上向后偏移 offset 个元素并且只获取前count个元素


zrevrangebyscore 不仅是按照元素分数从大往小的顺序给出结果,而且他的 min 和max 的参数的顺序和 zrangebyscore 命令是相反的



增加某个元素的分数

zincrby key increment member

zincrby 命令可以增加一个元素的分数,返回值是更改后的分数,例如想给peter 加 4 分

zincrby scoreborder 4 peter

increment 也可以是负数表示减分

zincrby scoreborder -4 peter

如果指定元素不存在,redis 在执行命令前会先建立它并将他的值赋为0在执行操作


获得集合中元素的数量

zcard key

当 key 存在且是有序集类型时,返回有序集的基数。当 key 不存在时,返回 0 。


获得指定分数范围内的元素个数

zcount key min max

zcount 命令的 min max 参数的特性与 zrangebyscore 命令中的一样




删除一个或多个元素

zrem key member [ member .... ]

zrem 命令的返回值是成功删除的元素数量(不包含本来就不存在的元素)


按照排名范围删除元素

zremrangebyrank key start stop

按照元素分数从小到大的顺序(即索引 0 表示最小的值)删除在指定排名范围内的所有元素,并返回删除元素的数量



按照分数范围删除元素

zremrangebyscore key min max

zremrangebyscore 命令删除指定分数范围内的所有元素,参数 min 和 max 的特性和 zrangebyscore 命令中的一样,返回值是删除元素的个数



获得元素的排名

zrank key member

zrank 命令会按照元素分数从小到大的顺序获得指定的元素排名(从 0 开始,即分数最小的元素排名为0)

zrevrank key member

zrebrank 命令则正好相反,分数最大的元素排名为0


计算有序集合的交集

zinterstore destination numkeys key [ key ... ] [ weights weight [ weight ... ] ] [ aggregate SUM | MIN | MAX ]

zinterstore 命令用来计算多个有序集合的交集病将结果存储在 destination 键中(同样以有序集合类型存储),返回值为 destination 键中元素的个数,destination 键中元素的分数是由 aggregate 参数决定的

1. 当 aggregate 是 SUM (也就是默认值),destination 键中元素的分数是每个参与计算的集合中该元素分数的和

2.当 aggregate 是 MIN 时,destination 键中元素的分数是参与计算的集合中该元素分数最小值

3.当 aggregate 是 MAX 是,destination 键中元素的分数是参与计算的集合中该元素分数最大值

zinterstore 命令还能通过 weights 参数设置每个集合的权重,每个集合在参与计算时元素的分数会被乘上该集合的权重



计算集合间的并集

zunionstore

用法与 zinterstore 命令的用法一样

感谢各位的阅读,以上就是"Redis有序集合类型的常用命令整理"的内容了,经过本文的学习后,相信大家对Redis有序集合类型的常用命令整理这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

元素 分数 命令 有序 顺序 范围 类型 参数 常用 从小到大 个数 从小 最小 数量 无穷大 索引 结果 学习 最大 相同 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 济南飞鸿网络技术有限公司 岗山软件开发前景怎么样 服务器如何关闭待机 科技互联网最前沿 中兴网管连接数据库 固原软件开发哪家靠谱 网络安全博士后 当前数据库的主流 服务器带外管理口如何连接 为什么互联网连接不上服务器 计算机编程数据库基础知识 服务器内存占用太高java 网络技术基础知识视频 北京金山软件开发的软件 北京服务器租用托管云主机 杭州屯云网络技术有限公司 对数据库物理布局校验失败 查找外文学术文章的全文型数据库 关于网络安全的一幅手抄报 网络安全认证技术题库 等餐服务器 如何利用数据库筛选关键蛋白 国家邮政局统计数据库 互联网金融科技公司校园招聘 外卖软件开发的项目环境 服务器开启伪静态 网络安全周开幕式在哪个城市举行 中国的网络技术的发展 一个有网络技术工资多少 中国电子商务网络技术有限公司
0