Redis 入门 - 五大基础类型及其指令学习

经过前面Redis入门系列三篇文章学习,相信大家已经准备好学习新知识了,到这里也算是真正开始学习Redis了。学习了软件安装,客户端选择,那么接下来也应该来了解Redis有什么,能干什么。

我们在第一章中就说过,Redis支持丰富的数据类型,今天我们就来学习Redis五种基础类型:字符串(String)、集合(Set)、有序集合(Sorted Set)、列表(List)、哈希(Hash)。

01、字符串(String)

Redis中字符串类型是二进制安全的数据类型。可以把字符串理解成一个字符数组,这个数组里存放着很多特定编码的字符,因此这种设计,所有Redis中的字符串可以存储认识数据类型:整数、小数、字符串、图片、序列化对象、二进制数据等。

我们简单讲解几个最常见指令。

1.设置指定key的值,语法:set key value

2.获取指定key的值,语法:get key

3.删除指定key,语法:del key

当然字符串还有很多其他指令,这里就不一一列举了,有兴趣的可以自己试试。

02、集合(Set)

Redis中的集合类型可以理解为存放着一组无序的、无重复的元素的合集。你可以对元素进行增删查,也可以进行差集、交集、并集运算。

我们简单讲解几个最常见指令。

1.向指定key集合添加一个或多个元素,语法:sadd key value1 value2...

2.获取指定key集合中所有元素,语法:smembers key

3.删除指定key集合中的一个或多个元素,语法:srem key value1 value2...

当然集合还有很多其他指令,这里就不一一列举了,有兴趣的可以自己试试。

03、有序集合(Sorted Set)

Redis中的有序集合类型可以理解为集合类型+有序,即每个元素都对应一个分值,因此集合类型有的功能,有序集合类型基本也都有,同时还多了对分值进行聚合、筛选、排序等功能。

我们简单讲解几个最常见指令。

1.向指定key有序集合添加一对或多对元素及其分值,语法:zadd key score1 value1 score2 value2...

2.获取指定key有序集合中指定元素的分值,语法:

3.删除指定key有序集合中指定元素,语法:zrem key value

当然有序集合还有很多其他指令,这里就不一一列举了,有兴趣的可以自己试试。

04、列表(List)

Redis中的列表类型是一个严格按照元素先后插入的顺序排列的字符串集合,并且可以通过在这个集合的两端进行插入和移除操作,还可以通过元素值或索引进行查找元素或移除元素。

我们简单讲解几个最常见指令。

1.从左边向指定key列表插入一个或多个元素,语法:lpush key value1 value2 value3

2.从右边移除并获取指定key列表的第一个元素,语法:rpop key

当然列表还有很多其他指令,这里就不一一列举了,有兴趣的可以自己试试。

05、哈希(Hash)

Redis中的哈希类型可以理解成是一组键值对集合,键表示一个字符串字段,值表示数据对象,并且支持添加、获取或删除单个项即键值对,也可以获取整个哈希集合等功能。

我们简单讲解几个最常见指令。

1.向指定key哈希中添加一对或多对键值对,语法:hset key field1 value1 field2 value2

2.获取指定key哈希中指定键对应的值,语法:hget key filed

当然哈希还有很多其他指令,这里就不一一列举了,有兴趣的可以自己试试。

当然Redis不止这五种数据类型,还有其他更高级的数据类型,我们作为入门级教程,还是先掌握好这五大基本类型。只有掌握好了这些基础知识,只能Redis有什么,能做什么,才好在项目上熟练使用Redis,才好用Redis来解决各种复杂问题。

万丈高楼平地起,打好基础最重要,因此文章中没有列举到的指令也需要大家自己多去试试,亲自感受一下,才能更好的理解、记住、掌握。

:测试方法代码以及示例源码都已经上传至代码库,有兴趣的可以看看。https://gitee.com/hugogoos/Planner

相关推荐
多多*1 小时前
JavaEE企业级开发 延迟双删+版本号机制(乐观锁) 事务保证redis和mysql的数据一致性 示例
java·运维·数据库·redis·mysql·java-ee·wpf
以待成追忆1 小时前
Scrapy——Redis空闲超时关闭扩展
数据库·redis·scrapy
小马爱打代码3 小时前
为什么有了Redis还需要本地缓存?
数据库·redis·缓存
爱笑的Sunday3 小时前
【LeetCode 题解】算法:15.三数之和
java·数据结构·算法·leetcode
小样vvv3 小时前
【Redis】架构演进:从基础到卓越的技术之旅
redis·架构
我想吃余4 小时前
【初探数据结构】二叉树的顺序结构——堆的实现详解(上下调整算法的时间复杂度分析)
数据结构·算法
Phoebe鑫4 小时前
数据结构每日一题day2(顺序表)★★★★★
数据结构·算法·leetcode
lwewan5 小时前
26考研——图_图的代码实操(6)
数据结构·笔记·考研·算法·深度优先
aimmon5 小时前
Rust从入门到精通之入门篇:8.基本数据结构
开发语言·数据结构·rust
十五年专注C++开发6 小时前
双指针技巧在C++中的应用:从基础到进阶
开发语言·数据结构·c++