redis数据类型

Redis数据类型及使用

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

一、字符串(Strings)

字符串是Redis中最基本的数据类型,也是最简单的存储方式。Redis中的字符串是二进制安全的,这意味着它们可以包含任何数据,包括图像、音频、视频等。

  • 存储方式
# 语法
SET key value
# 示例  将键"username"的值设置为"john"
SET username john
  • 获取值
# 语法
GET key
# 示例 获取键"username"的值
GET username

如图所示:
在这里插入图片描述

  • 常用方法

tips:
在Redis中,存储的键(key)名是自定义的。你可以根据自己的需求命名键,但是需要注意以下几点:

  1. 键名只能包含以下字符:大写字母、小写字母、数字、空格、_-:.@+/$=#~^{}
  2. 键名不能包含其他特殊字符,例如:!@#$%^&*()等。
  3. 键名不能以 :.+/ 这些字符开头。
  4. 键名长度不能超过128个字符。

在实际应用中,为了方便管理和维护,建议使用有意义的命名规则,比如使用驼峰命名法或者下划线命名法等。这样可以提高代码的可读性和可维护性。
二、列表(Lists)

Redis的列表是一个有序的字符串集,可以添加一个元素到头部或尾部,或者获取指定位置的元素。

添加元素

LPUSH key value1 [value2 ...]
RPUSH key value1 [value2 ...]

例如,将元素"john"和"jane"添加到键"users"的列表头部和尾部:

LPUSH users john
RPUSH users jane

获取元素

LRANGE key start stop [WITHSCORES]

例如,获取键"users"的列表中的前两个元素:

LRANGE users 0 1 WITHSCORES

三、集合(Sets)

Redis的集合是一个无序的字符串集合,它只存储独特的字符串。集合支持添加、删除、测试成员等操作。

添加元素

SADD key member1 [member2 ...]

例如,将元素"john"和"jane"添加到键"users"的集合中:

SADD users john jane

获取元素

SMEMBERS key

例如,获取键"users"的集合中的所有元素:

SMEMBERS users

四、有序集合(Sorted Sets)

Redis的有序集合是一个带有分数的字符串集合,它可以将元素存储为唯一的字符串,并根据一个浮点数分数来为集合中的元素排序。

添加元素

ZADD key score member1 [score member2 ...]

例如,将元素"john"的分数设置为100,将元素"jane"的分数设置为90,添加到键"users"的有序集合中:

ZADD users 100 john 90 jane 

五、哈希表(Hashes)

Redis的哈希表是一个键值对的集合.哈希可以存储关于某个对象的信息,并以一种可扩展和高效的方式来存储和检索这些信息。
哈希结构如下所示:

# 个人理解,hash表一个键值对,只不过value的内容是变长键值对
key : value={{key:value},{key:value}....}

添加字段和值

HSET key field value

例如,在键"user"下添加字段"age"并将其值设置为30:

HSET user age 30

获取字段值

HGET key field

例如,获取键"user"下字段"age"的值:

HGET user age
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis支持多种数据类型,包括string、hash、list、set和sorted set等。其中,string是最基本、最简单的数据类型,用于存储字符串。 Hash是用于存储键值对的数据结构,其中的value只能存储字符串,不允许存储其他数据类型,也不存在嵌套现象。每个hash可以存储232 - 1个键值对,并可以灵活添加或删除对象属性。但需要注意的是,hash类型并不适合存储大量对象,也不应该将hash作为对象列表使用,因为遍历整体数据的效率可能会较低。 除了string和hash类型Redis还支持list、set和sorted set等数据类型。List是一个有序的字符串列表,可以进行插入、删除和查找等操作。Set是一个无序的字符串集合,可以进行元素的添加、删除和查找操作,并且不允许重复元素的存在。Sorted Set是一个有序的字符串集合,每个元素都有一个对应的score,可以根据score进行排序和范围查找。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Redis 数据类型](https://blog.csdn.net/weixin_52851967/article/details/122670564)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值