当前位置: 首页 > news >正文

day52-Redis

Redis

1.Redis

1.1  RESP连接Redis

1.2  定义:是一个高性能的key-value数据库(非关系型数据库)

1.3  数据类型:

key键的类型是字符串类型;

值的类型有五种:字符串String,哈希hash,列表list,无序集合set,有序集合zset

1.4  核心特点:新版Redis是多线程的,Redis单线程性能很高(一般单线程性能低,Redis特例)

2.String类型

(1)最常用的类型,可以存储String,Integer等数据, 甚至是二进制数据,一个字符串最大容量是512M

(2)set命令:key不存在即为添加操作,存在即为修改操作;TTL:-1è为永久存在

 

(3)设置过期时间:setex

(4)设置多个键值对:mset

 

(5)追加值:append

 

(6)查询值:单个查询get,多个查询mget

(7)del命令:删除单个或多个键

(8)keys命令:查询所有的key

(9)exists命令:判断键是否存在,1存在,0不存在

(10)type命令:查看键对应的value的类型

(11)expire命令:设置键过期时间

(12)TTL命令:查看键有效时间(-1永久,-2不存在)

 

3.List类型

链表结构

往左侧添加值:lupsh;                                                                 往右侧添加值:rpush;

                          

  

获取值:lrange:从左侧开始,第一个值索引为0;索引可以是负数,表示从尾部开始计数

lrange key start stop(0 -1代表获取全部)

       

修改命令:lset key 索引 替换的值

删除命令:将列表中前count次出现的值移除

count<0:从头往后删除;count>0:从尾往头删;count=0:删除所有的值

4.Set类型

特点:字符串类型,无序且不可重复

(1)添加

(2)smembers:获取集合中所有元素

(3)sismember:判断元素是否在集合中

(4)srem:删除元素

(5)scard:获取集合中元素的个数

(6)spop:弹出元素(随机删除count个值)

(7)smove:移动元素

5.Hash哈希类型

特点:key值对应的value中包含一对键值对(类似Map<String,Map<String,String>>)

(1)添加单个和多个值HSET和HMSET

(2)查询:HGETALL查询内部所有的键值对

(3)HGET :获取value中单个key对应的值;HMGET ;获取value中多个key对应的值

(4)HDEL:通过value中的某个key删除某个键值对

6.zset类型(有序集合)

特点:存放数据有序且不可重复,独立且根据score来排序

(1)添加:ZADD  key  score value

  

(2)ZRANGE...withscores:获取索引区间内的value

(3)ZRANGEBYSCORE:获取score分数区间的value

(4)ZREM:删除元素

(5)ZCARD:获取集合中元素个数

http://www.lryc.cn/news/112279.html

相关文章:

  • 高效处理矢量大数据的高可用解决方案
  • Docker Compose构建lnmp
  • Flutter开发问题记录
  • 如何使用本地mock数据
  • XXL-JOB定时任务框架(Oracle定制版)
  • SpringBoot + ajax 实现分页和增删查改
  • ProxyGenerator-代理类生成器
  • ARM 内存屏障指令
  • 了解Linux 的 mmap --- 笔记
  • docker删除容器(步骤详解)
  • boost beast http server 测试
  • Android 10.0 系统开启禁用adb push和adb pull传输文件功能
  • 浙大数据结构第七周之07-图4 哈利·波特的考试
  • vue2-vue项目中你是如何解决跨域的?
  • 【Paper Reading】DETR:End-to-End Object Detection with Transformers
  • 【rust/入门】windows安装rust gnu环境(折腾)
  • java面试---字符串相关内容
  • MYSQL进阶-事务的基础知识
  • 【C++】C++面向对象,泛型编程总结篇(封装,继承,多态,模板)|(秋招篇)
  • 【Github】作为程序员不得不知道的几款Github加速神器
  • react18之08自定义hook (简单的axios-get、修改浏览器title、localStorage、获取滚动条位置、img转换为base64)
  • 对CommonJS、AMD、CMD、ES Module的理解
  • JVM之类加载与字节码(二)
  • 安装linux操作系统
  • 【SpringBoot】知识
  • react ant add/change created_at
  • OSPF 动态路由协议 路由传递
  • 5.kubeadm安装
  • 【雕爷学编程】Arduino动手做(180)---Seeeduino Lotus开发板2
  • 6.5 池化层