Redis 五大数据类型

本文详细介绍了 Redis 中常见的数据结构如 String、List、Set 和 Hash 的操作,包括添加、查询、修改和删除等,同时讲解了如何使用这些数据结构进行对象存储和集合运算,对于 Redis 的实际应用提供了清晰的指导。
摘要由CSDN通过智能技术生成
  1. String
    • 基本操作
      --+ 
          set key value 
          setex key value time --设置过期时间
          setnx key value  --跟 如果存过该key值了 返回0 else 1
          incr key  --跟i++ 类似只不过这个的类型为string
          decr key --  i--
          incrby key num -- i+=num 类似
          getrange key start end --截取下标[start end] 的字符串
          setrange key start  xxx --在下标start 处插入xxx
          mset key1 value1 key2 value2 ... --添加多值
          mget key1 key2 ... --取到多值
          msetnx key1 value1 key2 value2 存多值  一起存成功 1,else 0
          
          mset user:1:name zhangsan user:1:age 2 存对象
          mget user:1:name user:1:age 取
          getset key value --会返回修改前的数据 不存在的返回nil
      
  2. List
    • 底层原理:快速链表——连续空间块 当数据多的时候通过指针连接地址空间块
    • 命令行:' L '开头的从左边做thing ,' R ' 同理右边
    • 基本操作
      --+
      Lpush ListName value  
      Lrange ListName 0,-1 获取List中所有的值
      --  -
      Lpop List --移除左边第一个
      Lrem ListNamenum value 移除List 中num个 value
      -- 修改
          Ltrim ListName index1 index2 截断List指定的下标
          Lset ListName index value 更新下标index对应的值
          Linsert ListName before/after value 将value 插入List的前面或后面
      
  3. Set(不能重复)
    • 基本操作
      -- +
      Sadd key value
      --查询
      Smembers SetName --查看指定的set 的所有值
      Smembers SetName value --判断某个值是否在set中
      Srandmember SetName --随机抽选一个元素
      --  -
      Srem SetName value --移除set指定的value 的值
      Spop SetName--随机删除元素
      -- ∪ ∩ ×
      SinTer SetName1 SetName2 --∩
      Sdief SetName1 SetName2 --×
      Sunion SetName1 SetName2 --∪
      --修改
      Smove SetName1 SetName2 value --从SetName1移动SetName2 
      
  4. Hash (Key-map集合)
    • 优点:适合对象存储
    • 基本操作
      --+
      Hset HashName key1 value1 key2 value2...
      Hget  HashName key1 key2...
      Hget all --查询全部
      Hlen Hash  --查询个数
      Hexists HashName key1 --查询key1是否存在
      --  -
      Hdel HashName key --删除指定的key 
      
  5. Zset(有序集合)
    • 基本操作
      --+
      Zadd ZsetName index value
      -- 🔍
      Zrevrange ZsetName 0 -1 --从小到大排序
      Zrange ZsetName 0 -1 --查询全部
      Zcard ZsetName --获取集合个数
      Zrangebyscore ZsetName -inf(min) +inf(max) 筛选[min,max]之内的值
      -- x
      Zrem ZsetName value  
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值