71muke?v=1
在线看书
立即购买

第一章 前言

收起
2024-09-01更新,每天更一篇

第二章 Redis简介

收起
2024-09-01更新,每天更一篇

第三章 Redis的基础数据结构

收起
2024-09-01更新,每天更一篇

第四章 Redis的高级数据结构与功能

收起
2024-09-01更新,每天更一篇

第五章 Redis的持久化机制

收起
2024-09-01更新,每天更一篇

第六章 Redis的事务

收起
2024-09-01更新,每天更一篇

第七章 Redis的分布式架构

收起
2024-09-01更新,每天更一篇

第八章 Redis的安全与访问控制

收起
2024-09-01更新,每天更一篇

第九章 Redis的性能优化

收起
2024-09-01更新,每天更一篇

第十章 Redis在实际项目中的应用

收起
2024-09-01更新,每天更一篇
71muke 71muke

字符串(String)

Redis的基础数据结构:字符串(String)使用

字符串(String)是Redis中最基础的数据类型之一。Redis的字符串不仅可以存储简单的文本字符串,还可以存储二进制数据,例如图片或序列化后的对象。字符串类型的数据操作简单且高效,是Redis使用最广泛的数据结构。

一、字符串的基本操作命令

  1. SET:设置键对应的字符串值。

    SET key value

    示例:

    SET name "Redis"
  2. GET:获取键对应的字符串值。

    GET key

    示例:

    GET name

    返回结果:

    "Redis"
  3. GETSET:设置键的值,并返回键的旧值。

    GETSET key value

    示例:

    GETSET name "NewRedis"

    返回结果:

    "Redis"
  4. SETEX:设置键的值,并指定过期时间(秒)。

    SETEX key seconds value

    示例:

    SETEX temp_key 10 "TemporaryValue"

    说明:键 temp_key 将在10秒后自动删除。

  5. SETNX:仅当键不存在时,设置键的值(SET if Not eXists)。

    SETNX key value

    示例:

    SETNX name "AnotherRedis"

    如果键 name 已经存在,该操作不会有任何效果。

  6. INCR:将键对应的值加1(键的值必须为整数)。

    INCR key

    示例:

    INCR counter

    如果 counter 的初始值为 10,操作后将返回 11

  7. INCRBY:将键对应的值增加指定整数。

    INCRBY key increment

    示例:

    INCRBY counter 5

    如果 counter 的初始值为 10,操作后将返回 15

  8. DECR:将键对应的值减1(键的值必须为整数)。

    DECR key

    示例:

    DECR counter

    如果 counter 的初始值为 10,操作后将返回 9

  9. DECRBY:将键对应的值减少指定整数。

    DECRBY key decrement

    示例:

    DECRBY counter 3

    如果 counter 的初始值为 10,操作后将返回 7

  10. STRLEN:获取键对应值的字符串长度。

    STRLEN key

    示例:

    STRLEN name

    如果 name 的值为 "Redis",操作后将返回 5

  11. APPEND:将值追加到现有的键值末尾。

    APPEND key value

    示例:

    APPEND name "Database"

    如果 name 的初始值为 "Redis",操作后将返回 12,此时 name 的值为 "RedisDatabase"

  12. GETRANGE:获取字符串值的子字符串(通过索引范围)。

    GETRANGE key start end

    示例:

    GETRANGE name 0 4

    如果 name 的值为 "RedisDatabase",操作后将返回 "Redis"

  13. SETRANGE:用指定的字符串覆盖键值,从指定偏移量开始。

    SETRANGE key offset value

    示例:

    SETRANGE name 5 "Data"

    如果 name 的初始值为 "RedisDatabase",操作后将返回 "RedisDataase"

二、配套练习题

练习题1:使用 SET 命令创建一个键名为 course,值为 "Redis". 然后使用 GET 命令获取并返回该键的值。

答案

SET course "Redis"
GET course

返回结果:

"Redis"

练习题2:使用 INCR 命令增加键名为 visits 的值,如果键不存在则创建它,初始值为0。执行3次 INCR 操作,最后返回 visits 的值。

答案

INCR visits
INCR visits
INCR visits
GET visits

返回结果:

"3"

练习题3:使用 SETNX 命令尝试设置键名为 user 的值为 "Admin",并确保该键只有在不存在时才会被设置。然后使用 GET 命令获取 user 的值。

答案

SETNX user "Admin"
GET user

如果 user 之前不存在,返回结果:

"Admin"

如果 user 已经存在,结果保持不变。

练习题4:使用 APPEND 命令将 "Learning" 追加到键 course 的值后,并返回新的字符串长度。

答案

APPEND course "Learning"
STRLEN course

假设 course 的初始值为 "Redis",操作后将返回 12,此时 course 的值为 "RedisLearning"

练习题5:使用 GETRANGE 命令获取键 course 的值的子字符串,从索引 04(包含)。

答案

GETRANGE course 0 4

假设 course 的值为 "RedisLearning",操作后将返回 "Redis"

留言

发布留言

需要购买本课才能留言哦~

{{ item.createtime | dateStr }}
×