四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用)
四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用)
文章目录
- 四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用)
 - 1. 有序集合 Zset(sorted set)
 - 2. zset 有序集合常用指令(详细讲解说明)
 - 2.1 `zadd <key><score1><value1><score2><value2>…` 将一个或多个 member 元素及其 score 值加入 到有序集 key 当中。
 - 2.2 `zrange <key><start><stop> [WITHSCORES]` 返回有序集 key 中,下标在`<start><stop>`之间的元素, 带 WITHSCORES,可以让分数一起和值返回到结果集,返回的结果是“升序”
 - 2.3 `zreverange <key><start><stop> [WITHSCORES]` 返回有序集 key 中,下标在`<start><stop>`之间的元素, 带 WITHSCORES,可以让分数一起和值返回到结果集,返回的是“降序”
 - 2.4 `zscore <key><member> ` 返回有序集 key 中,成员 member 的 score 值
 - 2.5 `zrangebyscore key min max [withscores] [limit offset count]` 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。
 - 2.6 `zrevrangebyscore key max min [withscores] [limit offset count] 同上`,改为从大到小排列
 - 2.7 `zincrby <key><increment><value> ` 为元素的 score 加上增量
 - 2.8 `zrem <key><value>` 删除该集合下,指定值的元素
 - 2.9 `zcount <key><min><max>` 统计该集合,分数区间内的元素个数
 - 2.10 `zrank <key><value>` 返回该值在集合中的排名,从 0 开始
 
- 3. 最后:
 
1. 有序集合 Zset(sorted set)
- Redis 有序集合 zset 与 普通集合 set 非常相似,时一个没有重复元素的字符串集合
 - 不同之处是有序集合的每个成员都关联了一个评分(score) ,这个评分(score) 被用来按照,从最低分到最高分的方式排序集合中的成员。集合的成员是唯一的,但是评分是可以重复的。
 - 因为元素是有序的,所以有可以很快的根据评分(score) 或者次序 (position)来获取一个范围的元素内容。
 - 访问有序集合的中间元素也是非常快的,你能够使用有序集合作为一个没有重复成员的列表。
 
sorted set 指令示意图- 案例蜀国五虎将:

2. zset 有序集合常用指令(详细讲解说明)
关于 zset 有序集合的命令,在 Redis 当中有如下这些:
这里我们介绍一些 zset 有序集合比较常用的一些命令,然后,举一反三,根据文档也可以对其它的命令上手学习使用了 。
2.1 zadd <key><score1><value1><score2><value2>… 将一个或多个 member 元素及其 score 值加入 到有序集 key 当中。
 

127.0.0.1:6379> zadd hero 1 "gy" 2 "zf" 3 "zy" 4 "mc" 5 "hz"
 

2.2 zrange <key><start><stop> [WITHSCORES] 返回有序集 key 中,下标在<start><stop>之间的元素, 带 WITHSCORES,可以让分数一起和值返回到结果集,返回的结果是“升序”
 

127.0.0.1:6379> zrange hero 0 -1
 

注意:
zrange后面可以追加上,带 WITHSCORES,可以让分数一起和值返回到结果集。默认是根据 score 评分进行一个升序排序的。

2.3 zreverange <key><start><stop> [WITHSCORES] 返回有序集 key 中,下标在<start><stop>之间的元素, 带 WITHSCORES,可以让分数一起和值返回到结果集,返回的是“降序”
 

使用和 zrange 是一样的。
127.0.0.1:6379> zrevrange hero 0 -1
 

127.0.0.1:6379> zrevrange hero 0 -1 withscores
 

2.4 zscore <key><member>  返回有序集 key 中,成员 member 的 score 值
 

127.0.0.1:6379> zscore hero gy
 

2.5 zrangebyscore key min max [withscores] [limit offset count] 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。
 

127.0.0.1:6379> zrangebyscore hero 1 3
 


2.6 zrevrangebyscore key max min [withscores] [limit offset count] 同上,改为从大到小排列
 

127.0.0.1:6379> zrevrangebyscore hero 5 1
 

2.7 zincrby <key><increment><value>  为元素的 score 加上增量
 

127.0.0.1:6379> zincrby hero 4 zf
 

当然,也可以是 - score评分值了
127.0.0.1:6379> zincrby hero -4 zf
 

2.8 zrem <key><value> 删除该集合下,指定值的元素
 

127.0.0.1:6379> zrem hero "zy"
 

2.9 zcount <key><min><max> 统计该集合,分数区间内的元素个数
 

127.0.0.1:6379> zcount hero 2 10
 

2.10 zrank <key><value> 返回该值在集合中的排名,从 0 开始
 

127.0.0.1:6379> zrank hero gy
 

3. 最后:
“在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。感谢你们,我们总会在某个时刻再次相遇。”
相关文章:
四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用)
四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用) 文章目录 四.4 Redis 五大数据类型/结构的详细说明/详细使用( zset 有序集合数据类型详解和使用)1. 有序集合 Zset(sorted set)2. zset 有序…...
Java---猜数字游戏
本篇文章所实现的是Java经典的猜数字游戏 , 运用简单代码来实现基本功能 目录 一.题目要求 二.游戏准备 三.代码实现 一.题目要求 随机生成一个1-100之间的整数(可以自己设置区间),提示用户猜测,猜大提示"猜大了",…...
网站快速收录:利用RSS订阅提升效率
本文转自:百万收录网 原文链接:https://www.baiwanshoulu.com/27.html 利用RSS订阅可以显著提升网站内容的更新和收录效率,以下是一些具体的方法和策略: 一、RSS订阅的基本原理 RSS(ReallySimpleSyndication或RichS…...
vue3第三部分--组件通信
title: 组件通信 date: 2025-01-28 12:00:00 tags:- 前端 categories:- 前端组件通信 目标:重点学习父子组件与兄弟组件的通信方式,以及插槽的作用与使用方式 父子组件通信 主要是通过props和自定义事件来实现 1.1 父 -> 子通信(通过 …...
DeepSeek R1-Zero vs. R1:强化学习推理的技术突破与应用前景
📌 引言:AI 推理的新时代 近年来,大语言模型(LLM) 的规模化扩展成为 AI 研究的主流方向。然而,LLM 的扩展是否真的能推动 通用人工智能(AGI) 的实现?DeepSeek 推出的 R1…...
matlab提取滚动轴承故障特征
为了精准、稳定地提取滚动轴承故障特征,提出了基于变分模态分解和奇异值分解的特征提取方法,采用标准模糊C均值聚类(fuzzy C means clustering, FCM)进行故障识 别。对同一负荷下的已知故障信号进行变分模态分解,利用 奇异值分解技术进一步提…...
数据结构与算法学习笔记----容斥原理
数据结构与算法学习笔记----容斥原理 author: 明月清了个风 first publish time: 2025.1.30 ps⭐️介绍了容斥原理的相关内容以及一道对应的应用例题。 Acwing 890. 能被整除的数 [原题链接](890. 能被整除的数 - AcWing题库) 给定一个整数 n n n和 m m m个不同的质数 p 1 …...
Java 知识速记:全面解析 final 关键字
Java 知识速记:全面解析 final 关键字 什么是 final 关键字? final 关键字是 Java 中的一个修饰符。它可以用于类、方法和变量,其作用是限制对这些元素的修改。究竟如何限制?我们来逐个分析。 final 在变量中的用法 1. 声明常…...
(笔记+作业)书生大模型实战营春节卷王班---L0G2000 Python 基础知识
学员闯关手册:https://aicarrier.feishu.cn/wiki/QtJnweAW1iFl8LkoMKGcsUS9nld 课程视频:https://www.bilibili.com/video/BV13U1VYmEUr/ 课程文档:https://github.com/InternLM/Tutorial/tree/camp4/docs/L0/Python 关卡作业:htt…...
9、Docker环境安装Nginx
一、拉取镜像 docker pull nginx:1.24.0二、创建映射目录 作用:是将docker中nginx的相关配置信息映射到外面,方便修改配置文件 1、创建目录 # cd home/ # mkdir nginx/ # cd nginx/ # mkdir conf html log2、生成容器 docker run -p 80:80 -d --name…...
受击反馈HitReact、死亡效果Death Dissolve、Floating伤害值Text(末尾附 客户端RPC )
受击反馈HitReact 设置角色受击标签 (GameplayTag基本了解待补充) 角色监听标签并设置移动速度 创建一个受击技能,并应用GE 实现设置角色的受击蒙太奇动画 实现角色受击时播放蒙太奇动画,为了保证通用性,将其设置为一个函数,并…...
572. 另一棵树的子树
前导题:100. 相同的树 回顾一下 判断两棵二叉树相同,根结点相同 且 左子树相同 且 右子树相同。 于是判断如下: 根结点都为null,返回true根结点不都为null,返回false根结点都不为null,但是值不相同&#…...
MATLAB中textBoundary函数用法
目录 语法 说明 示例 匹配文本的边界 匹配文本的结尾边界 对文本的边界求反 textBoundary函数的功能是匹配文本的开头或结尾。 语法 pat textBoundary pat textBoundary(type) 说明 pat textBoundary 创建与文本开头或结尾匹配的模式。textBoundary 可以使用 ~ 运算…...
vue3的路由配置
先找到Layout布局文件,从中找到左侧边栏,找到下述代码 <SidebarItem v-for"route in noHiddenRoutes" :key"route.path" :item"route" :base-path"route.path" />/** *菜单项 <SidebarItem>: *使用…...
在彼此的根系里呼吸
爱如草木,需以晨露滋养,而非绳索捆缚。一段健康的亲密关系,恰似两株根系相连却各自向阳的树——风起时枝叶相触,晴空下共享光影,却始终保有向地心深处生长的自由。那些纠缠的根须是信任编织的网,容得下沉默…...
深入理解若依RuoYi-Vue数据字典设计与实现
深入理解若依数据字典设计与实现 一、Vue2版本主要文件目录 组件目录src/components:数据字典组件、字典标签组件 工具目录src/utils:字典工具类 store目录src/store:字典数据 main.js:字典数据初始化 页面使用字典例子…...
深入MapReduce——从MRv1到Yarn
引入 我们前面篇章有提到,和MapReduce的论文不太一样。在Hadoop1.0实现里,每一个MapReduce的任务并没有一个独立的master进程,而是直接让调度系统承担了所有的worker 的master 的角色,这就是Hadoop1.0里的 JobTracker。在Hadoop1…...
Flutter_学习记录_Tab的简单Demo~真的很简单
1. Tab的简单使用了解 要实现tab(选项卡或者标签视图)需要用到三个组件: TabBarTabBarViewTabController 这一块,我也不知道怎么整理了,直接提供代码吧: import package:flutter/material.dart;void main() {runApp(MyApp());…...
CSS核心
CSS的引入方式 内部样式表是在 html 页面内部写一个 style 标签,在标签内部编写 CSS 代码控制整个 HTML 页面的样式。<style> 标签理论上可以放在 HTML 文档的任何地方,但一般会放在文档的 <head> 标签中。 <style> div { color: r…...
Deepseek本地部署(ollama+open-webui)
ollama 首先是安装ollama,这个非常简单 https://ollama.com/ 下载安装即可 open-webui 这个是为了提供一个ui,毕竟我们也不想在cmd和模型交互,很不方便。 第一,需要安装python3.11,必须是3.11(其他版…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
浅谈不同二分算法的查找情况
二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况…...
华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...
JS手写代码篇----使用Promise封装AJAX请求
15、使用Promise封装AJAX请求 promise就有reject和resolve了,就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
【向量库】Weaviate概述与架构解析
文章目录 一、什么是weaviate二、High-Level Architecture1. Core Components2. Storage Layer3. 组件交互流程 三、核心组件1. API Layer2. Schema Management3. Vector Indexing3.1. 查询原理3.2. 左侧:Search Process(搜索流程)3.3. 右侧&…...
JS面试常见问题——数据类型篇
这几周在进行系统的复习,这一篇来说一下自己复习的JS数据结构的常见面试题中比较重要的一部分 文章目录 一、JavaScript有哪些数据类型二、数据类型检测的方法1. typeof2. instanceof3. constructor4. Object.prototype.toString.call()5. type null会被判断为Obje…...
人工智能--大型语言模型的存储
好的,我现在需要回答用户关于GGUF文件和safetensors文件后缀的差别的问题。首先,我得先确认这两个文件格式的具体应用场景和它们各自的优缺点。用户可能是在处理大模型时遇到了这两种文件格式,想了解它们的区别以便正确使用。 首先ÿ…...

