开发者

Redis的数据类型解读

目录
  • String
    • Redis String类型命令详解与优化指南
      • 1. 基础操作
      • 2. 批量操作
      • 3. 数字增减
      • 4. 有效期控制
    • 命令对比速查表
    • Key的层级模式
      • Hash类型
        • Redis Hash类型常见命令速查表
        • Link类型
          • Set类型
            • SortSet类型
              • 总结

                String

                Redis的数据类型解读

                Redis的数据类型解读

                以下是基于图片中 Redis String类型命令 的提取与优化整理,结合实用场景和注意事项,便于快速掌握核心用法:

                Redis String类型命令详解与优化指南

                1. 基础操作

                命令

                语法示例

                作用

                场景说明

                SET

                SET key value

                添加/修改键值对

                缓存、简单数据存储

                GET

                GET key

                获取key对应的value

                读取缓存或配置

                SETNX

                SETNX key value

                key不存在时才设置(原子操作)

                分布式锁、防重复提交

                set get setnx

                • setnx 如果key值不存在 才添加 如果存在 就不添加 这才是 真正的新增操作

                Redis的数据类型解读

                • set 后面 跟nx 也可以实现

                2. 批量操作

                命令

                语法示例

                优势

                MSET

                MSET k1 v1 k2 v2

                减少网络开销,批量写入

                MGET

                MGET k1 k2

                批量读取,提升效率

                • mset 多量 添加/修改
                • mget 多量 获取

                3. 数字增减

                命令

                语法示例

                说明

                INCR

                INCR key

                整数+1(如计数器)

                INCRBY

                INCRBY key 5

                指定步长(如+5)

                INCRBYFLOAT

                INCRBYFLOAT key 0.5

                浮点数增减(如库存调整)

                incr (auto-increment)

                • incrby 值改成 负的 就 是自减了
                • incrbyfloat 浮点数增减

                4. 有效期控制

                命令

                语法示例

                用途

                SETEX

                SETEX key 60 "value"

                设置键值对并指定有效期(秒)

                PSETEX

                PSETEX key 10000 "value"

                毫秒级有效期(精准控制)

                setex (ex =expire)

                添加一个Key 并且 设置有效期

                Redis的数据类型解读

                同样在后面加 ex 可以实现

                psetex

                命令对比速查表

                需求

                应选命令

                替代方案

                设置值并过期

                SETEX

                SET

                +EXPIRE

                防覆盖写入

                SETNX

                SET

                +NX

                参数

                浮点数计算

                INCRBYFLOAT

                客户端计算后SET

                Redis的数据类型解读

                Key的层级模式

                Redis的数据类型解读

                Redis的数据类型解读

                在这里面就形成了层级结构

                Redis的数据类型解读

                Redis的数据类型解读

                Hash类型

                Redis的数据类型解读

                Redis的数据类型解读

                Redis Hash类型常见命令速查表

                命令格式

                功能描述

                示例用法

                HSET key field value

                设置/修改Hash键GVdfMdlM中指定字段的值

                HSEwww.devze.comT user:100 name "张三"

                HGET key field

                获取Hash键中指定字段的值

                HGET user:100 name

                → "张三"

                HMSET key field1 value1 [field2 value2...]

                批量设置多个字段值(Redis 4.0+建议改用HSET)

                HMSET product:500 price 2999 stock 100

                HMGET key field1 [field2...]

                批量获取多个字段的值

                HMGET user:100 name age

                HGETALL key

                获取Hash键中所有字段和值(返回交替显示的字段/值列表)

                HGETALL user:100

                HKEYS key

                获取Hash键中所有字段名

                HKEYS product:500

                → ["price", "stock"]

                HVALS key

                获取Hash键中所有字段python

                HVALS product:500

                → ["2999", "100"]

                HINCRBY key field increment

                对指定字段值进行整数递增/递减(支持负数)

                HINCRBY product:500 stock -5

                HSETNX key field value

                仅当字段不存在时设置值(原子操作)

                HSETNX user:100 ejavascriptmail "a@test.com"

                • Hset

                Redis的数据类型解读

                Redis的数据类型解读

                相当于 一个 key 可以存放 多个哈希key 和 哈希value

                • Hget

                Redis的数据类型解读

                要同时指定 key 和 哈希key 才可以获得 哈希value

                HMset 输入一个key 和一次性添加多个 哈希key 和 哈希value

                Redis的数据类型解读

                Redis的数据类型解读

                HMget 输入一次key 一次性输入 多个 哈希key 去获得 多个 哈希value

                Redis的数据类型解读

                HgetAll 输入一次key 获得所有 的哈希key 哈希value 依次返回

                Redis的数据类型解读

                Hkeys 获得所有的哈希key

                Redis的数据类型解读

                Hvals 获得所有的哈希value

                Redis的数据类型解读

                HincrBy 指定 key 指定哈希key 选择增加的 数值

                Redis的数据类型解读

                Hsetnx 指定key 和 哈希key 如果哈希key不存在 则添加 value 如果 存在 则添加失败

                Redis的数据类型解读

                Link类型

                List接近于 Java中的LinkedList

                Redis的数据类型解读

                Redis的数据类型解读

                Redis的数据类型解读

                Lpush 向左推入元素 L是 left

                Redis的数据类型解读

                先推入1 后 2 后3 所以顺序是 321

                Redis的数据类型解读

                Rpush 向右推入元素 R是 right

                Redis的数据类型解读

                Redis的数据类型解读

                Lpop 向左取出元素 并且删除该元素

                Redis的数据类型解读

                Rpop 向右取出元素 并且删除该元素

                Redis的数据类型解读

                Lrange 从左到右取出 范围内的数 并且不删除

                Redis的数据类型解读

                Redis的数据类型解读

                BLpop 左 延迟等待 删除

                Redis的数据类型解读

                阻塞方式 第三个参数是时间

                如果表内不存在数据 就会等100s 去等

                打开第二个客户端去添加数据 然后第一个客户端就会 接收到然后删除

                Redis的数据类型解读

                BRpop 右 延迟等待删除编程客栈

                Redis的数据类型解读

                阻塞方式 第三个参数是时间

                如果表内不存在数据 就会等100s 去等

                打开第二个客户端去添加数据 然后第一个客户端就会 接收到然后删除

                Redis的数据类型解读

                Redis的数据类型解读

                Set类型

                List接近于 Java中的LinkedList

                Redis的数据类型解读

                Redis的数据类型解读

                Redis的数据类型解读

                Lpush 向左推入元素 L是 left

                Redis的数据类型解读

                先推入1 后 2 后3 所以顺序是 321

                Redis的数据类型解读

                Rpush 向右推入元素 R是 right

                Redis的数据类型解读

                Redis的数据类型解读

                Lpop 向左取出元素 并且删除该元素

                Redis的数据类型解读

                Rpop 向右取出元素 并且删除该元素

                Redis的数据类型解读

                Lrange 从左到右取出 范围内的数 并且不删除

                Redis的数据类型解读

                Redis的数据类型解读

                BLpop 左 延迟等待 删除

                Redis的数据类型解读

                阻塞方式 第三个参数是时间

                如果表内不存在数据 就会等100s 去等

                打开第二个客户端去添加数据 然后第一个客户端就会 接收到然后删除

                Redis的数据类型解读

                BRpop 右 延迟等待删除

                Redis的数据类型解读

                阻塞方式 第三个参数是时间

                如果表内不存在数据 就会等100s 去等

                打开第二个客户端去添加数据 然后第一个客户端就会 接收到然后删除

                Redis的数据类型解读

                Redis的数据类型解读

                SortSet类型

                Redis的数据类型解读

                Redis的数据类型解读

                Zadd 添加 注意的是 第一个是 key 然后 前面的数据是 score 后面的值是 value

                Redis的数据类型解读

                它会自动按照score 分数排名 升序

                Redis的数据类型解读

                Zrem (rem remove) key 为 stus 就是把value 为 Tom 的删除掉

                Redis的数据类型解读

                Zrank (rank 排名)

                Redis的数据类型解读

                它返回的排名 是从 0 开始的 0 1 2 所以 就是 2

                Redis的数据类型解读

                Zrevrank (rev = reverse rank 排名)

                Redis的数据类型解读

                倒序排序 从0开始 0 1 2 3 所以是 3

                Redis的数据类型解读

                Zcard 获取所有元素总个数

                Redis的数据类型解读

                Redis的数据类型解读

                Zcount 0 82 范围查询个数

                Redis的数据类型解读

                Redis的数据类型解读

                ZincrBy (选择自增多少分 改成负的就减分了)

                Redis的数据类型解读

                Zrange (查出这个范围的所有数据) 起始为0

                Redis的数据类型解读

                Redis的数据类型解读

                Zrevrange 通过排序个数 范围查询 (rev = reverse range 范围) )

                Redis的数据类型解读

                Redis的数据类型解读

                ZrangeByscore 通过分数范围查询 value

                Redis的数据类型解读

                总结

                以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。 

                0

                上一篇:

                下一篇:

                精彩评论

                暂无评论...
                验证码 换一张
                取 消

                最新数据库

                数据库排行榜