2.Redis有五种主要的数据类型

Redis有五种主要的数据类型

  1. String(字符串):String类型是最简单的数据类型,可以存储任意类型的数据,例如整数、浮点数、字符串等。String类型支持一些基本的操作,如设置值、获取值、增减值等。

  2. Hash(哈希):Hash类型是一个键值对集合,类似于一个关联数组。每个键值对被称为一个field-value对,它们可以存储对象的属性和属性值。Hash类型支持对某个field的增减值操作,以及获取所有field-value对等操作。

  3. List(列表):List类型是一个有序的字符串集合,可以按照添加顺序存储字符串元素。List类型支持在列表的头部或尾部添加元素、删除元素、获取指定位置的元素等操作。

  4. Set(集合):Set类型是一个无序的字符串集合,不允许重复元素。Set类型支持添加元素、删除元素、判断某个元素是否存在等操作。

  5. Sorted Set(有序集合):Sorted Set类型是一个有序的字符串集合,每个元素都有一个分数值,根据分数值进行排序。Sorted Set类型支持添加元素、删除元素、按照分数范围获取元素等操作。

以上五种数据类型在Redis中提供了丰富的数据结构,可以满足不同场景下的需求。

  1. string(字符串)
  2. hash(哈希)
  3. list(列表)
  4. set(集合)
  5. zset(sorted set:有序集合)

在这里插入图片描述

1. String (字符串)
设置
set  name tom
获取
get name
删除
del name
2. Hash (哈希)
格式: key key value 设置 单个键值对
hset  demo name tom
获取name对应的value
hget demo name
获取全部的key value
hgetall demo
设置多个键值对
hmset demo age 18  phone 110 email 120
删除某个键值对
hdel demo email
删除整个hash键
del demo
3. Set
格式 : key values设置
sadd  demo1 123
sadd  demo1 456
获取全部元素
smembers demo1
判断某个元素是否存在 
sismember demo1 123
删除指定value
srem demo1 123
4.List
格式 : key value(列表)设置
lpush demo2 123
lpush demo2 456
rpush demo2 789
获取列表长度
llen demo2
获取列表指定范围
lrange demo2 0 10
获取指定索引的value
lindex demo2 1
从左端获取一个值返回并移除
lpop demo2
从右端获取一个值返回并移除
rpop demo2
给指定元素前面插入某个元素
linsert demo2 before 123 666
给指定元素后面插入某个元素
linsert demo2 after 123 888
5.Zset
设置
zadd demo3 100 a
zadd demo3 101 b
zadd demo3 102 c
zdd demo3 10 aa 20 bb 30 cc
获取有序集合的成员数
zcard demo3
计算在有序集合中指定区间分数的成员数
zcount demo3 10 20
指定元素分数进行加减值 返回结果
zincrby demo3 1 bom
zincrby demo3 -1 bom
通过索引区间返回有序集合成指定区间内的成员
zrange demo3 3 4
通过分值范围返回有序集合成指定区间内的成员  (都包含)
zrangebyscore demo3 100 102
通过分值范围返回有序集合成指定区间内的成员  (不包含100)
zrangebyscore demo3 (100 102

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/282345.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

杂记8---多线激光雷达与相机外参标定

背景:本人开源的标定程序,提供大家参考学习 基于棋盘格的多线激光雷达和鱼眼/针孔模型相机外参标定的程序 前言 标定数据,只需要一个棋盘格标定板。把标定板放置lidar 与camera 共视区域,拜拍几个pose进行采集。 基于简谐原则…

webpack5零基础入门-12搭建开发服务器

1.目的 每次写完代码都需要手动输入指令才能编译代码,太麻烦了,我们希望一切自动化 2.安装相关包 npm install --save-dev webpack-dev-server 3.添加配置 在webpack.config.js中添加devServer相关配置 /**开发服务器 */devServer: {host: localhos…

布隆过滤器原理介绍和典型应用案例

整理自己过去使用布隆过滤器的应用案例和理解 基本介绍 1970年由布隆提出的一种空间效率很高的概率型数据结构,它可以用于检索一个元素是否在一个集合中,由只存0或1的位数组和多个hash算法, 进行判断数据 【一定不存在或者可能存在的算法】 如果这些…

内容检索(2024.03.22)

随着创作数量的增加,博客文章所涉及的内容越来越庞杂,为了更为方便地阅读,后续更新发布的文章将陆续在此汇总并附上原文链接,感兴趣的小伙伴们可持续关注文章发布动态! 本期更新内容: 1. 真实案例分享--E…

C#,人工智能,机器学习,聚类算法,训练数据集生成算法、软件与源代码

摘要:本文简述了人工智能的重要分支——机器学习的核心算法之一——聚类算法,并用C#实现了一套完全交互式的、可由用户自由发挥的,适用于聚类算法的训练数据集生成软件——Clustering。用户使用鼠标左键(拖动)即可生成任意形状,任意维度,任意簇数及各种数据范围的训练数…

【python】flask请求钩子,主动抛出异常与异常捕获

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

综合实验---Web---进阶版

目录 实验配置: 1.PHP调整主配置文件时,修改文件内容 1.原内容调整(在编译安装的情况下) 2.调整如下 3.没有调整的,根据之前配置就行 2.配置Nginx支持PHP解析 1.原内容如下 2.调整如下 3.验证PHP测试页 1.原内容如下 2.调整如下 4…

Vant4:自动导入样式无效问题

今天前端小伙伴使用了Vant4,发现了一个奇怪的问题:按照Vant官方文档,按需引入组件样式(Vite 的项目): 安装插件 # 通过 npm 安装 npm i vant/auto-import-resolver unplugin-vue-components unplugin-aut…

Linux——du, df命令查看磁盘空间使用情况

一、实现原理: df 命令的全称是Disk Free ,显而易见它是统计磁盘中空闲的空间,也即空闲的磁盘块数。它是通过文件系统磁盘块分配图进行计算出的。 du 命令的全称是 Disk Used ,统计磁盘有已经使用的空间。它是直接统计各文件各目…

金融知识分享系列之:支撑阻力

金融知识分享系列之:支撑阻力 一、支撑阻力原理二、支撑阻力作用1.识别市场资金的预期2.作为入场和平仓的重要参考 三、寻找支撑阻力四、延伸思考五、支撑阻力总结 一、支撑阻力原理 支撑阻力核心要素: 锚定效应订单驱动 支撑阻力原理: 市…

产品经理面试如何自我介绍?

金三银四求职季,你是不是也有面试的冲动!但面试并不是头脑一热就能取得好结果,在此之前,必须得有周全的准备,才能应对好面试官的“连环问”! 所以,今天这篇产品经理面试干货文章,别…

数据结构--链表刷题(一)快慢指针

1.快慢指针 先看一道简单的题目:返回中间结点 这道题有一个最朴素的做法就是先遍历一边链表,设置计数器求出链表长度,再重新走1/2的链表长度,即可返回中间节点 // 第二种解法 //这种解法需要遍历两次链表ListNode cur1 head;int…

Git基础(24):分支回退

前言 将分支回退到之前的某个版本 开发中,可能开发某个功能不需要了,或者想要回退到之前历史的某个commit, 放弃后来修改的内容。 放弃已修改的内容 如果未提交,直接使用 git revert分支回退到指定commit 操作前的分支网络图…

Git版本管理--远程仓库

前言: 本文记录学习使用 Git 版本管理工具的学习笔记,通过阅读参考链接中的博文和实际操作,快速的上手使用 Git 工具。 本文参考了引用链接博文里的内容。 引用: 重学Git-Git远程仓库管理_git remote add origin-CSDN博客 Git学习笔记&am…

【数据结构】选择排序

大家好,我是苏貝,本篇博客带大家了解选择排序,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 一. 基本思想二. 直接选择排序 一. 基本思想 每一次从待排序的数据元素中选出最小&#xff…

【GPT概念-03】:人工智能中的注意力机制

说明 注意力机制生成分数(通常使用输入函数),确定对每个数据部分的关注程度。这些分数用于创建输入的加权总和,该总和馈送到下一个网络层。这允许模型捕获数据中的上下文和关系,而传统的固定序列处理方法可能会遗漏这…

android adb 实时画面 和操作

1. 下载 scrcpy 建议 windows10 用户 点击链接下载 不然可能会提示缺少部分 dll https://github.com/Genymobile/scrcpy/releases/download/v2.3.1/scrcpy-win32-v2.3.1.ziphttps://github.com/Genymobile/scrcpy/releases/download/v2.3.1/scrcpy-win32-v2.3.1.zip windo…

LVGL:拓展部件——键盘 lv_keyboard

一、概述 此控件特点: 特殊Button矩阵:lv_keyboard 本质上是一个经过定制的按钮矩阵控件。每个按钮都可以独立触发事件或响应。预定义的键映射:lv_keyboard 自带了一套预设的按键布局和对应的字符映射表,开发者可以根据需要选择…

Vue2在一个页面内动态切换菜单显示对应的路由组件

项目的需求是在一个页面内动态获取导航菜单,导航菜单切换的时候显示对应的路由页面,类似于tab切换的形式,切换的导航菜单和页面左侧导航菜单是同一个路由组件,只是放到了一个页面上,显示的个数不同,所有是动…

JS加密解密之字符编码知识

在前端开发中,字符编码是一个至关重要的概念,特别是在数据传输、加密和解密等方面。JavaScript作为一种常用的脚本语言,在处理字符编码时也有其独特之处。本文将详细介绍JavaScript中的字符编码知识,包括字符编码的分类和相关案例…