Redis及其数据类型和常用命令(一)

Redis

非关系型数据库,不需要使用sql语句对数据库进行操作,而是使用命令进行操作,在数据库存储时使用键值对进行存储,应用场景广泛。
一般关系型数据库(使用sql语句进行操作的数据库)和非关系型数据库可以一起配合使用。在Redis中,键必须是String类型,而值可以为其他类型

Linux系统下可以直接下载正常解压安装,Winodws需要去github上找对应的压缩包,解压后即可使用

简单启动命令

#启动服务端
redis-server
#启动客户端
redis-cli
#测试服务端和客户端连接是否有误
ping
# 删除所有keys
flushall

在这里插入图片描述
在这里插入图片描述

Redis中的数据类型和基本使用命令

String类型和基本命令

在Redis中,类似像1,2,3,4…这样的数字都会被视为字符串

# key -> string value -> string
# 设置键值对
set key value
# 获取键中的值
get key
# 设置多对键值对
mset key1 value1 key2 value2...
# 获取多对键中的值
mget key1 key2...
# 往键对应的字符串追加值
append key value
# 获取value字符串的长度
strlen key
# 将对应key中的value 中的字符串值+1 仅限于改字符串为数字
incr key
# 将对应key中的value 中的字符串值-1 仅限于改字符串为数字
decr key
# 将对应key中的value 中的字符串值增加某个值 仅限于改字符串为数字
incrby key [需要修改的值]
# 将对应key中的value 中的字符串值减少某个值 仅限于改字符串为数字
decrby key [需要修改的值]

若想插入的字符串为hello world,则需要在set时加上双引号,否则Redis会将hello和world分成两个字符串来处理

set str "hello world"

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

List类型

value -> string
key -> list# 将一个或多个元素插到表头
lpush key value[value...]
# 将一个或多个元素插到表尾
rpush key balue[value...]
# 删除表头元素
lpop key
# 删除表尾元素
rpop key
# 遍历列表
lrange start end #0为表头 -1为表尾
# 得到下标对应位置的字符串
lindex key index
# 获取列表长度
llen key
# 删除元素
lrem key count value
count >0 从表头开始向表尾搜索,移除与value相等的元素,数量为count
count <0 从表尾开始向表头搜索,移除与value相等的元素,数量为count
count =0 移除列表中与value相等的所以元素

lpushx与lpush不同在于,lpushx只会对已经存在的列表进行插入操作,rpushx同理
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Set类型

无序集合类型

key -> string
value -> set("stirng","string1")
# 添加元素
# 将一个或者多个元素插入到一个集合中
sadd key value [value...]
# 遍历集合
smembers key
# 差集(谁在前面谁是减数,谁在后面谁是被减数)
sdiff key [key...]
# 交集
sinter key [key...]
# 并集
sunion key [key...]
# 删除一个或元素
srem key value[value...]
# 随机删除一个元素
spop key

sdiffstore与sdiff不同的地方在于,sdiffstore会将结果存放到一个新的集合中
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

Docker基础介绍

Docker是一种容器化平台&#xff0c;它可以轻松地封装、分发和运行应用程序和服务。 Docker的基本概念包括&#xff1a; 容器&#xff1a;一个独立运行的、可移植的软件包&#xff0c;包含应用程序、运行环境和依赖项。容器可以在不同的环境中运行&#xff0c;而不受环境差异的…

每日一题 — 四数之和

18. 四数之和 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 双指针思想&#xff0c;转换成三数之和&#xff0c;在转换成二数之和先排序&#xff0c;固定一个数a&#xff0c;转换成三数之和再固定一个数b&#xff0c;转换成二数之和再注意不漏和去重 代码&#…

详细说说JVM的class文件(一)

介绍 class虚拟机实现可以从文件系统(环境变量)读取也可以从JAR(或者ZIP)包提取&#xff0c;也可以从网上下载&#xff0c;从数据库加载&#xff0c;甚至在运行中直接生成class文件。 文件由8位字节流组成。16位和32位的数量分别通过读入两个和四个连续的8位字节来构造。多字…

[LeetCode][426]【学习日记】将二叉搜索树转化为排序的双向链表——前驱节点pre 和 当前节点cur 的使用

题目 426. 将二叉搜索树转化为排序的双向链表 将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表 。 对于双向循环列表&#xff0c;你可以将左右孩子指针作为双向循环链表的前驱和后继指针&#xff0c;第一个节点的前驱是最后一个节点&#xff0c;最后一个节点的后继是第…

读算法的陷阱:超级平台、算法垄断与场景欺骗笔记07_价格歧视

1. 行为歧视 1.1. 单个企业通过使用数据驱动的算法&#xff0c;从而更好地实现锁定客户、开展个性化营销与定价的目的 1.2. 市场环境再次发生了变化 1.2.1. 在共谋场景中&#xff0c;定价算法提高了企业经营者在销量数据上的透明性&#xf…

通讯协议制定之常见问题、注意事项总结

文章目录 通讯协议制定之常见问题、注意事项总结1. 通讯协议制定介绍小结2. 常见的问题及注意事项总结2.1 3次握手2.2 心跳检测2.3 ACK回复及重发机制2.4 通信协议版本匹配2.5 校验的重要性2.6 最大数据传输长度2.7 大小端问题2.8 通信负载能力2.9 压力测试的重要性 通讯协议制…

【Java从入门到精通】Java异常处理

异常是程序中的一些错误&#xff0c;但并不是所有的错误都是异常&#xff0c;并且错误有时候是可以避免的。 比如说&#xff0c;你的代码少了一个分号&#xff0c;那么运行出来结果是提示是错误 java.lang.Error&#xff1b;如果你用System.out.println(11/0)&#xff0c;那么…

Java并发编程: AQS

文章目录 一、前置知识二、什么是AQS三、使用AQS框架的锁和同步器1、ReentrantLock2、ReentrantReadWriteLock3、CountDownLatch4、CyclicBarrier5、Semaphore&#xff1a;信号量 四、锁和同步器的关系1、锁&#xff1a;面向锁的使用者2、同步器&#xff1a;面向锁的实现者 五、…

四川易点慧电子商务有限公司抖音小店安全正规

在如今网络购物日益普及的时代&#xff0c;消费者对于购物平台的选择越来越挑剔。四川易点慧电子商务有限公司抖音小店以其安全正规的经营模式&#xff0c;赢得了广大消费者的信赖和好评。本文将为您详细介绍四川易点慧电子商务有限公司抖音小店的优势和特点&#xff0c;让您在…

Vue3全家桶 - Vue3 - 【2】声明响应式数据(ref + reactive + toRef + toRefs)

声明响应式数据 一、 组合式API 1.1 ref() ref() 函数&#xff0c;可以创建 任何数据类型 的 响应式数据&#xff1b;&#x1f53a;注意&#xff1a; 当值为 对象类型 时&#xff0c;会用 reactive() 自动转换它的 .value&#xff1b; ref 函数的内部实现依赖于 reactive 函…

代码随想录训练营第六天|242. 有效的字母异位词

242. 有效的字母异位词 已解答 简单 相关标签 相关企业 给定两个字符串 s 和 t &#xff0c;编写一个函数来判断 t 是否是 s 的字母异位词。 注意&#xff1a;若 s 和 t 中每个字符出现的次数都相同&#xff0c;则称 s 和 t 互为字母异位词。 示例 1: 输入: s "anagram&q…

【AI】如何创建自己的自定义ChatGPT

如何创建自己的自定义ChatGPT 目录 如何创建自己的自定义ChatGPT大型语言模型(LLM)GPT模型ChatGPTOpenAI APILlamaIndexLangChain参考推荐超级课程: Docker快速入门到精通Kubernetes入门到大师通关课本文将记录如何使用OpenAI GPT-3.5模型、LlamaIndex和LangChain创建自己的…

Sqoop 学习

参考视频 大数据Sqoop教程丨从零开始讲解大数据业务及数据采集和迁移需求_哔哩哔哩_bilibili 介绍 Sqoop是Hadoop生态体系和RDBMS&#xff08;关系型数据库&#xff09;体系之间传送数据的一种工具 Hadop生态系统&#xff1a;HDFS&#xff0c;Hbase&#xff0c;Hive等 RDBMS包…

java-ssm-基于jsp商场停车服务管理信息系统

java-ssm-基于jsp商场停车服务管理信息系统

为HTTP的2024端口设置重定向

为HTTP的2024端口设置重定向 server { listen 80:2024; server_name www.test.com; # 将HTTP的2024端口请求重定向到对应的HTTPS端口 return 301 https://$host:2024$request_uri;}

Python模块和包

模块和包 为什么要有模块和包 在Python中&#xff0c;模块&#xff08;Module&#xff09;和包&#xff08;Package&#xff09;是组织和管理代码的重要工具&#xff0c;有助于将代码划分为可维护和重用的单元。 模块&#xff08;Module&#xff09; 概念&#xff1a;模块是…

Notes用户还可自助改密码

大家好&#xff0c;才是真的好。 很多时候企业对员工的安全使用进行了硬性规定&#xff0c;例如严格的就是&#xff0c;每三个月或六个月要至少更改一次密码。 在Domino 8.5以后&#xff0c;功能上多了一个新特性&#xff0c;叫ID保险库&#xff0c;其实就是把用户的id标识符…

day40 整数拆分 不同的二叉搜索树

题目1&#xff1a;343 整数拆分 题目链接&#xff1a;343 整数拆分 题意 将正整数n拆成k个正整数的和&#xff08;k>2&#xff09;使整数的乘积最大化 尽量拆成若干个数值近似相等的数&#xff0c;这使用的是数学里面的思想&#xff1a;ab<(a^2b^2)/2 (当且仅当ab时&…

开源的java 代码分析库介绍

本文将为您详细讲解开源的 Java 代码分析库&#xff0c;以及如何安装这些库、它们的特性、区别和应用场景。Java 社区提供了多种代码分析工具&#xff0c;这些工具可以帮助您在 Java 应用程序中进行代码质量评估、性能分析、安全检查等功能。 1. CheckStyle 安装 - 通过…

tsv文件在大数据技术栈里的应用场景

是的&#xff0c;\t 是指制表符&#xff08;tab&#xff09;&#xff0c;它通常用作字段分隔符在 TSV&#xff08;Tab-Separated Values&#xff09;格式的文件中。TSV是一种简单的文本格式&#xff0c;它使用制表符来分隔每一列中的值&#xff0c;而每一行则代表一个数据记录。…