Redis的五种数据类型(string、hash 、list、set、zset)

这篇具有很好参考价值的文章主要介绍了Redis的五种数据类型(string、hash 、list、set、zset)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        

        Redis 提供了丰富的数据类型,常见的有五种:String(字符串),Hash(哈希),List(列表),Set(集合)、Zset(有序集合)

 String

        String 是最基本的 key-value 结构,key 是唯一标识,value 是具体的值,value其实不仅是字符串, 也可以是数字(整数或浮点数),value 最多可以容纳的数据长度是 512M。

常用指令

普通字符串的基本操作:

# 设置 key-value 类型的值
> SET name hanbing
OK 

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库 

# 根据 key 获得对应的 value
> GET name
"hanbing" 

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

 # 判断某个 key 是否存在
> EXISTS name
(integer) 1

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库 

# 返回 key 所储存的字符串值的长度
> STRLEN name
(integer) 3

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库 

# 删除某个 key 对应的值
> DEL name
(integer) 1

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库 

批量设置 :

 # 批量设置 key-value 类型的值
> MSET key1 value1 key2 value2 
OK

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 批量获取多个 key 对应的 value
> MGET key1 key2 
1) "value1"
2) "value2"

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

Hash

        Hash 是一个键值对(key - value)集合,其中 value 的形式如: value=[{field1,value1},...{fieldN,valueN}]。Hash 特别适合用于存储对象。

常用指令

# 存储一个哈希表key的键值
HSET key field value   

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 获取哈希表key对应的field键值
HGET key field

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 在一个哈希表key中存储多个键值对
HMSET key field value [field value...] 

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 批量获取哈希表key中多个field键值
HMGET key field [field ...]       

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 删除哈希表key中的field键值
HDEL key field [field ...]  

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

List

        List 列表是简单的字符串列表,按照插入顺序排序,可以从头部或尾部向 List 列表添加元素。

        列表的最大长度为 2^32 - 1,也即每个列表支持超过 40 亿个元素。

        List 类型的底层数据结构是由双向链表或压缩列表实现的:

常用命令

# 将一个或多个值value插入到key列表的表头(最左边),最后的值在最前面
LPUSH key value [value ...] 

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 返回列表key中指定区间内的元素,区间以偏移量start和stop指定,从0开始,如果到-1结束,则为返回全部元素
LRANGE key start stop

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 将一个或多个值value插入到key列表的表尾(最右边)
RPUSH key value [value ...]

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 移除并返回key列表的头元素
LPOP key     

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

Set 

        Set 类型是一个无序并唯一的键值集合,它的存储顺序不会按照插入的先后顺序进行存储。

        一个集合最多可以存储 2^32-1 个元素。概念和数学中个的集合基本类似,可以交集,并集,差集等等,所以 Set 类型除了支持集合内的增删改查,同时还支持多个集合取交集、并集、差集。

常用命令

# 往集合key中存入元素,元素存在则忽略,若key不存在则新建
SADD key member [member ...]

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 获取集合key中所有元素
SMEMBERS key

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 从集合key中删除元素
SREM key member [member ...] 

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

Set 类型和 List 类型的区别如下:

  • List 可以存储重复元素,Set 只能存储非重复元素;
  • List 是按照元素的先后顺序存储元素的,而 Set 则是无序方式存储元素的。

Zset

Zset 类型(有序集合类型)相比于 Set 类型多了一个排序属性 score(分值),对于有序集合 ZSet 来说,每个存储元素相当于有两个值组成的,一个是有序结合的元素值,一个是排序值。

有序集合保留了集合不能有重复成员的特性(分值可以重复),但不同的是,有序集合中的元素可以排序。

常用命令

# 往有序集合key中加入带分值元素
ZADD key score member [[score member]...]   

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 正序获取有序集合key从start下标到stop下标的元素
ZRANGE key start stop [WITHSCORES]

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库

# 往有序集合key中删除元素
ZREM key member [member...]  

Redis的五种数据类型(string、hash 、list、set、zset),redis,数据库


 文章来源地址https://www.toymoban.com/news/detail-823347.html

到了这里,关于Redis的五种数据类型(string、hash 、list、set、zset)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Redis数据类型(list\set\zset)

    \\\"maybe it\\\'s why\\\"          列表类型是⽤来存储多个 有序 的字符串,列表中的每个字符串称为元素(element),⼀个列表最多可以存储个2^32 - 1个元素。在Redis中,可以对列表两端插⼊(push)和弹出(pop),还可以获取指定范围的元素列表、获取指定索引下标的元素等。列表是

    2024年02月11日
    浏览(27)
  • redis的五种数据类型

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。以下是这五种数据类型的简介: string(字符串)类型是Redis最基本的数据类型,一个键最大能存储512MB,它支持二进制数据,即可以包含任何数据,比如jpg图片或

    2024年02月05日
    浏览(42)
  • Redis的五种基本数据类型

    简介:String 是 Redis 最基础的数据结构类型,它是二进制安全的,可以存储图片 或者序列化的对象,值最大存储为 512M 简单使用举例: set key value、get key等 应用场景:共享 session、分布式锁,计数器、限流。 内部编码有 3 种,int(8字节长整型)/embstr(小于等于 39字节字符串)

    2024年04月12日
    浏览(33)
  • 【分享】Redis的五种基本数据类型和应用场景

    Redis支持五种基本数据类型: String(字符串类型):可以是普通字符串,也可以是整数或浮点数值。可以设置过期时间;可以对字符串进行append、get、set、incr、decr等操作。 Hash(哈希类型):类似于一个数组,其中每个元素都是一个field和value的键值对。可以对整个哈希表或

    2024年02月16日
    浏览(31)
  • Redis Redis的数据结构 - 通用命令 - String类型命令 - Hash类型命令

    目录 Redis的数据结构: Redis命令: 通用命令:(通用指令是部分数据类型的,都可以使用的指令) KEYS查询命令: DEL删除命令: EXISTS判断命令: EXPIPE有效期设置命令: TTL查看剩余期限命令: String类型: String的3种类型: String类型的常见命令: SET插入数据命令: MSET多重插

    2024年02月09日
    浏览(35)
  • Redis List类型命令 - Set类型命令 - SortedSet类型命令

    目录 List类型 什么是双向链表呢? List类型的特征: List的常用命令 LPUSH和RPUSH的区别: LPOP和RPOP的区别: LPUSH和RPUSH的使用 LPOP和RPOP的使用 LRANGE key star end:返回一段距离范围内所有的元素 BLPOP和BRPOP:它在没有该元素的时候会等待一段时间,而不是直接返回nil 问题1:如何利

    2024年02月09日
    浏览(36)
  • List集合的五种遍历方式

    目录 一、List五种遍历方式  1、普通for遍历 2、 增强for遍历  3、Lambda表达式  4、迭代器遍历  5、列表迭代器 方法 说明 迭代器遍历 在遍历的过程中需要删除元素,请使用迭代器。 列表迭代器 在遍历的过程中需要添加元素,请使用列表迭代器。 增强for遍历 仅仅想遍历,那

    2024年02月10日
    浏览(34)
  • 【Java】List集合遍历的五种方法

    🎊专栏【Java】 🌺每日一句:人生最重要的就是要清醒的认知 ⭐欢迎并且感谢大家指出我的问题 目录 1.通过for循环配合List接口中的size()和get(index i)的方法 2.使用Iterator迭代器及其方法遍历集合 🍔迭代器 🍔具体操作 3.增强for循环遍历 🍔是for循环的一种 🍔格式 🍔好处 🍔弊

    2024年02月03日
    浏览(45)
  • Redis数据类型-Hash哈希存储类型

    小白:伟哥,java中的Map集合类型在Redis中有对应的存储吗? 伟哥:有的,我带你撸一波。 Redis的hash哈希存储类型,类似于是java中的map存储结构,适合用来存储对象,每个哈希最多可以存储4294967295(2^32-1)个字段值对,具体数量实际上也受Redis部署的虚拟机上的总内存的限制

    2024年02月12日
    浏览(30)
  • ②【Hash】Redis常用数据类型:Hash [使用手册]

    个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ redis hash 是一个String类型的field(字段)和value(值)的映射表。 redis中每个hash可以存储2^32-1个键值对(40多亿

    2024年02月04日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包