场景

Centos中Redis的下载编译与安装(超详细):

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334

Redis的启动和关闭(前台启动和后台启动):

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103972348

RedisDesktopManager客户端可视化工具下载安装与使用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103983147

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

ZADD命令

语法

ZADD key score member [[score member] [score member] ...]

将一个或多个 member 元素及其 score 值加入到有序集 key 当中。

如果某个 member 已经是有序集的成员,那么更新这个 member 的 score 值,并通过重新插入这个 member 元素,来保证该 member 在正确的位置上。

score 值可以是整数值或双精度浮点数。

如果 key 不存在,则创建一个空的有序集并执行 ZADD 操作。

当 key 存在但不是有序集类型时,返回一个错误。

举例

ZRANGE命令

语法

ZRANGE key start stop [WITHSCORES]

返回有序集 key 中,指定区间内的成员。

其中成员的位置按 score 值递增(从小到大)来排序。

具有相同 score 值的成员按字典序(lexicographical order )来排列。

如果你需要成员按 score 值递减(从大到小)来排列,请使用 ZREVRANGE 命令。

下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。
你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
超出范围的下标并不会引起错误。
比如说,当 start 的值比有序集的最大下标还要大,或是 start > stop 时, ZRANGE 命令只是简单地返回一个空列表。
另一方面,假如 stop 参数的值比有序集的最大下标还要大,那么 Redis 将 stop 当作最大下标来处理。
可以通过使用 WITHSCORES 选项,来让成员和它的 score 值一并返回,返回列表以 value1,score1, ..., valueN,scoreN 的格式表示。
客户端库可能会返回一些更复杂的数据类型,比如数组、元组等。

举例同上图

ZREM命令

语法

移除有序集 key 中的一个或多个成员,不存在的成员将被忽略。

当 key 存在但不是有序集类型时,返回一个错误。

举例

ZSCORE命令

语法

ZSCORE key member

返回有序集 key 中,成员 member 的 score 值。

如果 member 元素不是有序集 key 的成员,或 key 不存在,返回 nil 。

举例

ZREVRANGE命令

语法

ZREVRANGE key start stop [WITHSCORES]

返回有序集 key 中,指定区间内的成员。

其中成员的位置按 score 值递减(从大到小)来排列。
具有相同 score 值的成员按字典序的逆序(reverse lexicographical order)排列。
除了成员按 score 值递减的次序排列这一点外, ZREVRANGE 命令的其他方面和 ZRANGE 命令一样。

举例

ZRANK命令

语法

ZRANK key member

返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列。

排名以 0 为底,也就是说, score 值最小的成员排名为 0 。

使用 ZREVRANK 命令可以获得成员按 score 值递减(从大到小)排列的排名。

举例

ZREVRANK命令

语法

ZREVRANK key member

返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递减(从大到小)排序。

排名以 0 为底,也就是说, score 值最大的成员排名为 0 。

使用 ZRANK 命令可以获得成员按 score 值递增(从小到大)排列的排名。

举例

ZCARD命令

语法

ZCARD key

返回有序集 key 的基数。

即返回集合里所有元素的个数。

举例

ZCOUNT命令

语法

ZCOUNT key min max

返回有序集 key 中, score 值在 min 和 max 之间(默认包括 score 值等于 min 或 max )的成员的数量。

举例

ZINCRBY命令

语法

ZINCRBY key increment member

为有序集 key 的成员 member 的 score 值加上增量 increment 。

可以通过传递一个负数值 increment ,让 score 减去相应的值,比如 ZINCRBY key -5 member ,就是让 member 的 score 值减去 5 。

当 key 不存在,或 member 不是 key 的成员时, ZINCRBY key increment member 等同于 ZADD key increment member 。

当 key 不是有序集类型时,返回一个错误。

score 值可以是整数值或双精度浮点数。

举例

其他命令参考

http://doc.redisfans.com/sorted_set/index.html

Redis常用命令之操作SortedSet(有序集合)相关推荐

  1. Redis常用命令入门5:有序集合类型

    有序集合类型 上节我们一起学习了集合类型,感受到了redis的强大.现在我们接着学Redis的最后一个类型--有序集合类型. 有序集合类型,大家从名字上应该就可以知道,实际上就是在集合类型上加了个有序 ...

  2. Redis常用命令之操作Set(集合)

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  3. Redis 常用数据类型之 zset(有序集合)

    Redis 常用数据类型之 zset(有序集合) 有序集合 zset(sorted-set)相关特性 redis 有序集合 zset 与 无序 set 类型的一样,都是 string 类型的集合元素, ...

  4. Redis常用命令之操作Hash类型

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  5. Redis常用命令之操作List类型

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  6. Redis常用命令之操作String类型

    场景 Centos中Redis的下载编译与安装(超详细): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103967334 Re ...

  7. Redis常用命令和操作

    1)连接操作命令     quit:关闭连接(connection)     auth:简单密码认证     help cmd: 查看cmd帮助,例如:help quit          2)持久化 ...

  8. Redis常用命令|查询|删除|模糊操作

    Redis中有很多操作命令,今天就给大家整理一下,或许不够全面,欢迎留言沟通. redis常用命令 作用 命令 描述 查看所有key keys * 模糊匹配key keys xxx* | keys * ...

  9. Redis 常用命令的学习

    Redis 常用命令的学习 文章目录 Redis 常用命令的学习 1. 介绍 2. Redis 的五种数据类型以及操作命令 1. 连接 2. Redis的key的操作命令 3.字符串类型:string ...

最新文章

  1. solr研磨之游标分页
  2. RAC数据库恢复到单实例数据库
  3. asp.net三层架构详解
  4. JVM命令查看与设置参数
  5. Redis 远程字典服务及shell全部命令汇总【点击可查看高清原图】(附 xmind思维导图原文件 百度网盘)
  6. Cisco 3550配置DHCP的实际经验
  7. ASP.NET Core 中是否有 PostAsJsonAsync() 方法?
  8. colorkey唇釉是否安全_colorkey空气唇釉,19/支
  9. mysql 自动备份删除_mysql自动备份删除5天前的备份
  10. WPF XAML 从零开始认识XAML
  11. 《大数据》2015年第3期“网络大数据专题”——大数据时代的互联网分析引擎...
  12. MATLAB实现BP神经网络预测汽油辛烷值
  13. Spring请求参数和路径变量
  14. [iOS]CIFilter滤镜
  15. 原来,是我的眼光出了错
  16. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第1节 常用函数接口_8_常用的函数式接口_Supplier接口...
  17. 什么是DNS智能云解析,什么是NS,更换NS多久生效?
  18. Hadoop原理简介
  19. 系统重构过程中的异构数据同步回环处理
  20. html压缩工具html-minifier -- nodejs常用模块(4)

热门文章

  1. Mr. Main and Windmills 模拟,计算几何(昆明)
  2. systemctl常用命令
  3. 华为p40鸿蒙系统价格有好高,鸿蒙系统版本华为P50新机的曝光,华为P40处境悲惨价格骤降...
  4. 手写一个简单的线程池MyThreadPool
  5. shiro登录认证过程讲解(转)
  6. 文件加载顺序_Springboot配置文件存放位置及读取顺序
  7. bat脚本交互输入_测评 | 不使用powershell运行 PowerShell 脚本的工具汇总
  8. centos 7 minimal connect: Network is unreachable和ifconfig command not found
  9. 计算机硬件价钱分配,电脑基础知识计算机硬件基础课件.ppt
  10. java byte数组转string_Java调用C++接口(初步了解)