Redis 五种数据类型的操作命令

时间:2024-10-10 13:46:06

一、五种数据类型的介绍

五种数据类型如图所示:

Redis 是一个开源的键值存储系统,它支持多种数据结构,每种数据结构都有其特定的用例和底层实现。以下是 Redis 的五种主要数据类型,以及它们适合存储的数据类型和底层实现:

1.1 String(字符串)

  • 适合存储的数据:简单的值,如配置选项、计数器、简单的缓存数据等。
  • 底层实现:在 Redis 中,字符串被实现为动态字符串(SDS),它是一个二进制安全的字符串,可以高效地进行内存分配和回收。


1.2 List(列表)

  • 适合存储的数据:有序集合,如消息队列、文章列表、粉丝列表等。
  • 底层实现:列表在 Redis 中是通过一个双向链表实现的,每个链表节点包含一个字符串值。这种结构使得列表可以在两端以 O(1) 的时间复杂度进行推入(push)和弹出(pop)操作。


1.3 Set(集合)

  • 适合存储的数据:无序集合,如标签集合、唯一性约束(如邮箱订阅列表)等。
  • 底层实现:集合在 Redis 中是通过哈希表实现的,其中每个元素都是唯一的。哈希表的实现确保了快速的查找、插入和删除操作。


1.4 Sorted Set(有序集合)

  • 适合存储的数据:需要根据分数排序的数据,如排行榜、带权重的队列等。
  • 底层实现:有序集合在 Redis 中是通过一个哈希表和一个跳跃表(SkipList)实现的。哈希表用于快速查找元素,而跳跃表用于维护元素的有序性,使得范围查询变得高效。


1.5 Hash(哈希)

  • 适合存储的数据:对象或映射表,如用户信息、配置信息等。
  • 底层实现:哈希在 Redis 中是通过哈希表实现的,其中每个字段都是一个键值对。这种结构使得可以快速访问和修改对象的属性。

<@_@>
        每种数据类型都有其特定的命令集,用于操作和查询数据。Redis 的这些数据类型提供了灵活的数据操作方式,使得它在多种应用场景中都非常有用。

二、操作命令

注意一:redis不区分大小写

注意二:使用redis前记得在cmd窗口开启redis 服务哦

2.1 字符串操作命令

Redis 中字符串类型常用命令:

  • SET key value                      ----->   设置指定key的值
  • GET key                               ----->   获取指定key的值
  • SETEX key seconds value   ----->   设置指定key的值,并将 key 的过期时间设为 seconds 秒
  • SETNX key value                 ----->   只有在 key 不存在时设置 key 的值

 

2.2 哈希操作命令

Redis hash 是一个string类型的 field 和 value 的映射表,hash特别适合用于存储对象,常用命令:

  • HSET key field value   ----->   将哈希表 key 中的字段 field 的值设为 value
  • HGET key field            ----->   获取存储在哈希表中指定字段的值
  • HDEL key field            ----->   删除存储在哈希表中的指定字段
  • HKEYS key                 ----->   获取哈希表中所有字段
  • HVALS key                  ----->   获取哈希表中所有值

2.3 列表操作命令

Redis 列表是简单的字符串列表,按照插入顺序排序,常用命令:

  • LPUSH key value1 [value2]      ----->   将一个或多个值插入到列表头部
  • LRANGE key start stop            ----->   获取列表指定范围内的元素
  • RPOP key                                 ----->   移除并获取列表最后一个元素
  • LLEN key                                  ----->   获取列表长度
  • BRPOP key1 [key2 ] timeout    ----->   移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超 时或发现可弹出元素为止

2.4 集合操作命令

Redis set 是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据,常用命令:

  • SADD key member1 [member2]   ----->   向集合添加一个或多个成员
  • SMEMBERS key                           ----->   返回集合中的所有成员
  • SCARD key                                   ----->   获取集合的成员数
  • SINTER key1 [key2]                      ----->   返回给定所有集合的交集
  • SUNION key1 [key2]                     ----->   返回所有给定集合的并集
  • SREM key member1 [member2]   ----->   移除集合中一个或多个成员

 

2.5 有序集合操作命令

Redis有序集合是string类型元素的集合,且不允许有重复成员。每个元素都会关联一个double类型的分数。常用命令:

常用命令:

  • ZADD key score1 member1 [score2 member2]   ----->   向有序集合添加一个或多个成员
  • ZRANGE key start stop [WITHSCORES]             ----->   通过索引区间返回有序集合中指定区间内的成员
  • ZINCRBY key increment member                        ----->   有序集合中对指定成员的分数加上增量 increment
  • ZREM key member [member ...]                           ----->   移除有序集合中的一个或多个成员

2.6 通用命令

Redis的通用命令是不分数据类型的,都可以使用的命令:

  • KEYS pattern   ----->   查找所有符合给定模式( pattern)的 key
  • EXISTS key     ----->   检查给定 key 是否存在
  • TYPE key         ----->   返回 key 所储存的值的类型
  • DEL key           ----->   该命令用于在 key 存在是删除 key

总结

以上就是关于Redis 的五种数据类型的介绍,以及其操作命令的使用,希望对各位看官有所帮助,感谢各位看官的观看,下期见,谢谢~

相关文章