【Redis学习总结】2. Redis五大数据类型

Redis五大数据类型与使用场景汇总!!(含完整实战案例,建议收藏) 无论是哪家公司,都很重视基础,大厂更加重视技术的深度和广度,面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。针对以上面试技术点,我在这里也做一些分享,希望能更好的帮助到大家。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取! 阅读详情

常用的数据类型

1. 字符串

  • set、get、del、append、strlen、mset、mget

2. 列表 

  • lpush、rpush、lpop、rpop
  • llen
  • lset 、lindex

3. Hash 

  • hset、hget、hmset、hmget、hgetall、hdel
  • hlen
  • hexists
  • hkeys、hvals

 

一、String字符串

1.  set/get/del/append/strlen

2.  Incr/decr/incrby/decrby 

     Incr/decr key 默认增加、减少1

     incrby/decrby key value 指定增加或是减少的数值

    【提示】键值对的值的数据类型必须是数字类型

3.   getrange/setrange 获取或是设定指定区间范围内的值

      getrange

      

      setrange 

       

4. setex(set with expire)键秒值/setnx(set if not exist)

     setex:设置带过期时间的key,动态设置。
     setex 键 秒值 真实值

     

     setnx:只有在 key 不存在时设置 key 的值。

      

     【提示】Redis的返回是0时表示设置失败,是1时表示设置成功!

5. mset/mget/msetnx

     mset:同时设置一个或多个 key-value 对。

     mget:获取所有(一个或多个)给定 key 的值。

     

     msetnx:同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在时才会成功!

      

     【注意】上面的k2是存在的,可以看出msetnx设置失败了!符合了上面的结论

6. getset(先get再set)

      getset:将给定 key 的值设为 value ,并返回 key 的旧值(old value)。  

      

 

二、List列表

 

1.   lpush/rpush/lrange

      

2.   lpop/rpop

      

3.   lindex,按照索引下标获得元素(从上到下)

      通过索引获取列表中的元素 lindex key index

       

4.   llen

       

5.   lrem key N value  从左面删除N个value值

      

      从left往right删除2个值等于v1的元素,返回的值为实际删除的数量

     【注意】LREM list3 0 值,表示删除全部给定的值。零个就是全部值

6.   ltrim key 开始index 结束index,截取指定范围的值后再赋值给key

      

7.   rpoplpush 源列表 目的列表

       

8.   lset key index value

       

9.   linsert key  before/after 值1 值2

      

      

 

小结

   lpush/rpush/lrange

   lpop/rpop

   llen

   lset key index value

   lindex key index
 

 

三、Redis的Set集合

 

1.   sadd/smembers/sismember

      

    【注意】set集合会自动去重的

     

     

2.   scard,获取集合里面的元素个数

     

3.   srem key value 删除集合中元素

     

     

4.   srandmember key 某个整数(随机出几个数)

      

5.   spop key 随机出栈

      

 

6.   smove key1 key2 在key1里某个值      作用是将key1里的某个值赋给key2

      

      

      

7.  数学集合类

(1)差集:sdiff    在第一个set里面而不在后面任何一个set里面的项

        

(2)交集:sinter

        

(3)并集:sunion

        

 

小结

sadd/smembers/sismember

scard

 srem key value

数学集合类 sdiff    sinter   sunion

 

四、Redis哈希(Hash)

 

1.    hset/hget/hmset/hmget/hgetall/hdel

         

         

         

         

         

         

2.   hlen

        

3.   hexists key 在key里面的某个值的key

        

4.   hkeys/hvals

        

5.   hincrby/hincrbyfloat

       

       

6.   hsetnx

      

 

小结

hset/hget/hmset/hmget/hgetall/hdel

hlen

hexists key 在key里面的某个值的key

hkeys/hvals

 

五、Redis有序集合Zset(sorted set)

 

在set基础上,加一个score值。之前set是k1 v1 v2 v3,现在zset是k1 score1 v1 score2 v2

 

1.   zadd/zrange

      

     

     

 

2.   zrangebyscore key 开始score 结束score

      

 

      

     【提示】 (   不包含

 

      limit 作用是返回限制, limit 开始下标步 多少步

       

     【注意】zrangebyscore key 开始score 结束score  withscores 这个命令也是可行的

 

3.   zrem key 某score下对应的value值,作用是删除元素

      

       

 

4.   zcard/zcount key score区间/zrank key values值,作用是获得下标值/zscore key 对应值,获得分数

      

     

     

     

5.   zrevrank key values值,作用是逆序获得下标值

      

6.   zrevrange

      

7.   zrevrangebyscore  key 结束score 开始score

      

 

小结

zadd/zrange

zrem key 某score下对应的value值

zcard/zcount key score区间

zrank key values值,作用是获得下标值

zscore key 对应值,获得分数

 

六、拓展

1. keys * 查看所有的key

2.  exists key的名字,判断某个key是否存在

3.   move key db   --->当前库就没有了,被移除了

4.   expire key 秒钟:为给定的key设置过期时间, ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期

【注意】过期的key就会被移除

5.   type key 查看你的key是什么类型

 

[附源码]计算机毕业设计JAVA网上花店系统 附源码]计算机毕业设计JAVA网上花店系统项目运行环境配置:(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;3.tomcat。 阅读详情

相关推荐

FreeSWITCH编译安装详细文档

本文档详细介绍了在Ubuntu 22.04系统上从源码编译安装FreeSWITCH的完整流程。主要内容包括:1)系统环境准备和依赖库安装;2)关键依赖库spandsp和sofia-sip的编译安装;3)FreeSWITCH源码的特定版本(v1.6.0)编译配置,包括禁用SignalWire模块的配置方法;4)系统服务配置,包括创建专用用户、设置权限以及配置systemd服务文件。文档特别提供了版本控制说明,确保后期能切换到相同的版本环境,并附有详细的命令操作步骤和注意事项。

唯有代码让我痴狂 1370

hget和get redis_Redis 中 set 与 hset 区别与使用

服务端语言:nodeJs;封装方法const _redis = require("redis");//引入redis/*注意:如果redis-server与nodejs客户端都在本地,下列可写成*client = redis.createClient();否则要对括号内容进行更改*/constclient = _redis.createClient(6379,'127.0.0.1'); //括号内...

weixin_39980082的博客 2245

高通Camera HAL3调试实战:如何用camxoverridesettings.txt高效抓取日志与dump图像数据

本文深入探讨了高通Camera HAL3调试中camxoverridesettings.txt文件的高效应用,重点介绍了如何通过该文件精准控制日志输出级别与dump图像数据,帮助开发者快速定位移动影像系统中的问题。文章详细解析了日志分级配置、图像数据捕获技巧及典型问题排查流程,为高通Camera HAL3项目开发提供了实用技术点。

weixin_30315905的博客 863

Redis(二):Redis数据类型的操作命令

1.字符串类型 1.1set与mset set语法:set key value mset语法:mset key value [key value…] set设置的是一个key-value,mset是批量设置 1.2get与mget get语法:get key mget语法:mget key [key …] get是获取一个key的value,mget是批量获取 1.3incr与decr 作用:将key对应的value加一(减一),如果key不存在,就会设置为0后在加一(减一),注意非数值操作是不正确的。 语

qq_41984117的博客 1149

基于QT的华为网络摄像头二次开发

第一次使用华为的网络摄像头并进行二次开发,网上关于QT对华为网络摄像头的二次开发的文章很少,基于项目的需求做了一些工作,特此记录。 目标: 1、实时预览 2、手动控制录制视频 3、监听告警型号 4、实时获取元数据中的划定区域内的人数 摄像头型号如下: 准备工作: 在购买摄像头后,应当在官网下载对应的开发资料,如果需要权限,则联系华为的技术支持人员。下载资料如下: SDC Development Kit Demo 8.0.T9 SDK DEMO下载地址:https://bbs.hua

xumingyifrend的博客 3170

Neurocomputing 投稿指南

Generation Information:选择论文所属领域。上传附件(利益声明,手稿,摘要)审稿人偏好:可以选择期待的审稿人。

qq_41174671的博客 2万+

Redis系列第二篇:redis常用命令总结

redis常用命令汇总

hsy12342611的专栏 1406

Flask基础项目:从零到一搭建用户管理系统

本文介绍了一个基于Flask的用户管理系统,具有完整的增删改查功能。系统采用SQLAlchemy ORM进行数据库操作,自动处理SQL注入并首次运行时创建表结构。主要特点包括:实时统计用户总数和平均年龄、智能即时搜索、前后端双重数据验证、邮箱唯一性检查、流畅动画效果和响应式设计。后端使用Flask框架实现RESTful API,前端采用现代化UI设计,支持异步操作不阻塞界面。系统安装简单,只需创建数据库并安装依赖即可运行,适合作为基础用户管理系统的参考实现。

数据知道的博客 3838

Redis 数据类型(String、List、Hash、set、Sorted set 数据类型)

文章目录 一、String数据类型 概述:String是 redis 最基本的类型,最大能存储 512MB 的数据,String类型是二进制安全的,即可以存储任何数据、比如数字、图片、序列化对象等 1、 SET/GET/APPEND/ STRLEN: redis-cli redis 127.0.0.1:6379> exists mykey #判断该键是否存在,存在返回1,否则返回0。 (integer) 0 redis 127.0.0.1:6379> append my

Gengchenchen的博客 1039

flowable工作流看这一篇就够了(基础篇)

接下来我们构建一个非常简单的请假流程,Flowable引擎需要流程定义为BPMN 2.0格式,这是一个业界广泛接受的XML标准。在Flowable术语中,我们将其称为一个流程定义(process definition)。一个流程定义可以启动多个流程实例(process instance)。流程定义可以看做是重复执行流程的蓝图。在这个例子中,流程定义定义了请假的各个步骤,而一个流程实例对应某个雇员提出的一个请假申请。

qq_38196449的博客 2万+

CDMamba安装配置Windows(50系列的显卡)

本人家里的显卡是RTX3050的,运行起来非常缓慢,大家可以参考上一篇文章,以下是用RTX5080配置的CDMamba,里面有一些库没有更新,因此会比较坑爹。就是pytorch已经更新了,搭配的是cuda12.8,但是cdmamba里的mmcv只更新到cuda12.1的版本,当然很多人会说那就向下兼容,但是笔者已经尝试了,会一直提示mmcv的问题。因此,索性直接不用mmcv。

hanfeng5268的博客 686

redis的hset hget mset mget是什么

mset 就是 同时可以塞多个kv mset k1 v1 k2 v2 k3 v3 mget同理,同时get多个kv mget k1 k2 k 3 mset mget比较简单 那hset hget呢? Connecting... Connected. myredis:0>hset xiaoming age 12 height 180 weight 140 "0" myredis:0>hset xiaodong age 12 height 180 weight 140 "3" myredis:0&g

自救 唯有自强 2496

手把手教你学pcie--性能调优 - 中断机制优化

在PCIe系统开发中,中断机制是主机与设备之间通信的重要组成部分。然而,不当的中断设计可能导致CPU负载过高、延迟增加等问题。本文将详细介绍如何优化PCIe系统的中断机制,提升系统性能和响应速度。传统中断(INTx):通过专用引脚发送中断信号,可能引发冲突且效率较低。消息中断(MSI):通过内存写操作发送中断消息,避免冲突并提高效率。扩展消息中断(MSI-X):基于MSI改进,支持更多独立中断向量,适用于复杂场景。选择合适的中断模式对系统性能至关重要。

MHD0815的博客 294

Redis学习笔记2 五大数据类型之字符串

一、Redis常用命令 设置键的值 语法:set key value [ex seconds] [px seconds] [nx|xx] 选项: ex seconds:给键设置秒级的过期时间 px milliseconds:给键设置毫秒级的过期时间 nx:当键不存在时才能设置成功,用于新增 xx:当键存在时才设置成功,用于更新 新增一个键name并设置值: 127.0.0.1:6379&g...

DoubleJing的博客 273

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java之学习记录 7 - 2 - redis五大数据类型 简单操作

使用Redis 1 五大数据类型 操作文档:http://redisdoc.com/ 1.1 字符串String set / get / del / append / strlen 127.0.0.1:6379> set k1 v1 # 保存数据 OK 127.0.0.1:6379> set k2 v2 # 保存数据 OK127.0.0.1:6379> keys * 1) "k1" 2) "k2" 127.0.0.1:6379> del k2 # 删.

dear_zx的博客 146

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

学习日志day63(2021-11-01)(1、Nosql数据库 2、安装Redis 3、Redis常用五大数据类型)

学习内容:学习Redis(Day63) 1、Nosql数据库 2、安装Redis 3、Redis常用五大数据类型 1、Nosql数据库 (1)技术的分类 1.解决功能性的问题:Java、Jsp、RDBMS、Tomcat、HTML、Linux、JDBC、SVN 2.解决扩展性的问题:Struts、Spring、SpringMVC、Hibernate、Mybatis 3.解决性能的问题:NoSQL、Java线程、Hadoop、Nginx、MQ、ElasticSearch (2)NoSQL(NoSQL = No

huzige_的博客 171

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Redis 学习笔记 Day2 12-30(五大数据类型中List,Set,HashMap,Zset)

List数据类型 LPUSH [字段] [值] 相当于left push 从左加入 LRANGE[字段] [开始index] [结束index] 相当于left range 从左查看区间值 0代表着开始 -1代表着末尾 RPUSH[字段] [值] ...

纯纯打工人 227

【 Redis五大数据类型实现原理】

键不同,值相同。

2401_86968712的博客 2543

Redis学习:Redis五大经典数据类型源码及底层数据结构

Redis五大经典数据类型源码及底层数据结构 1. 面试题 2. Redis源码 3. Redis源码核心 4. Redis是字典数据库存放KV键值对 5. 五大经典数据类型底层源码以及底层数据结构

LiuYQi的博客 1250

Redis学习: 1、Redis五大经典数据类型源码及底层数据结构

Redis学习: 1、Redis五大经典数据类型源码及底层数据结构

LiuYQi的博客 838

Redis五大数据类型

五大数据类型介绍 redis 中的数据都是以 key/value 的形式存储的,五大数据类型主要是指 value 的数据类型,包含如下五种: STRING STRING 是 redis 中最基本的数据类型,redis 中的 STRING 类型是二进制安全的,即它可以包含任何数据,比如一个序列化的对象甚至一个 jpg 图片,要注意的是 redis 中的字符串大小上限是 512M 。 LIST LIST 是一个简单的字符串列表,按照插入顺序进行排序,我们可以从 LIST 的头部 (LEFT) 或者尾部 (RIG

m0_54797663的博客 3201

七天玩转Redis | Day2、Redis五大数据类型使用详解

号外号外????????????:小猿和优快云联合推出的“七天玩转Redis,打卡还能领周边”活动开始啦!点击查看????????【报名及活动细则】????????,轻轻松松和小伙伴们一起拿奖励吧! PS:零基础也能入门Redis哟,快去一起参与拿周边吧! 博主简介????????‍⚕️:国内某一线互联网公司Java工程师????????‍????,业余自媒体创作者????,优快云博客专家????,Java领域优质创作者????,华为云享专家????,华为HDZ核心成员????‍????,曾发表并

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 1455

redis学习-redis五大数据类型

五大数据类型简介 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 也就是例子中的k1 v1,k2 v2 string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。 string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M Hash(哈希,类似java里的Map) Redis hash 是一个键值对集合。 Redis ha

Java硬件工程师的博客 2128

2、Redis:Redis的五大数据类型

文章目录

Surplus.的博客 252

Redis入门——Key、五大数据类型图文详解

文章目录1、Redis简介2、Redis常见命令3、Redis_Key关键字4、五大数据类型简介4.1、String(字符串)4.2、List(列表)4.3、Set4.3、Hash4.4、ZSet 1、Redis简介       Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,

Code皮皮虾的博客 4591
上一篇: 【Redis学习总结】1. Redis的安装
下一篇: 【Redis学习总结】3.解析配置文件 redis.conf
Rita楠神
博客等级 码龄9年 27粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值