码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Redis 常用命令和基本数据结构(数据类型)


    Redis 常用命令和数据结构类型

    • Redis 通用命令
    • Redis数据类型
      • Key的层级格式
        • 例如:如果用户id是1,商品id也是1 如何区分不同类型的redis
        • 存放第一个json
        • 在图形界面中可以看到我们存放的层级结构
      • String类型
      • Hash类型
      • Hash类型的常用命令
        • 添加一条数据
        • 访问数据
        • 在图形界面中的结构
        • 获取当前字段的全部值
      • List类型
        • 左侧插入三个元素
        • 右侧插入三个元素
        • 左右取一个元素
        • 获取角标范围内的元素
        • BLPOP在没有元素的时候等待指定时间
          • user2 没有元素所以开始等待 如果没有就返回null
      • Set类型
        • Set类型的常用命令
        • 多个集合之间的操作 并集 交集
        • Set的小练习
      • SortedSet类型 可排序的集合
        • 常用命令有
        • SortedSet练习
        • 图形化界面中显示

    Redis 通用命令

    在这里插入图片描述

    Redis数据类型

    Key的层级格式

    在这里插入图片描述

    例如:如果用户id是1,商品id也是1 如何区分不同类型的redis

    在这里插入图片描述

    存放第一个json

     set test:user:1 '{"id":1,"name":"javck"}'
    
    
    • 1
    • 2

    在图形界面中可以看到我们存放的层级结构

    在这里插入图片描述

    String类型

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    Hash类型

    在这里插入图片描述

    Hash类型的常用命令

    Hash的常见命令有:
    ●HSET key field value:添加或者修改hash类型key的field的值
    ●HGET key field:获取- -个hash类型key的field的值
    ●HMSET: 批量添加多个hash类型key的field的值
    ●HMGET: 批量获取多个hash类型key的field的值
    ●HGETALL: 获取- -个hash类型的key中的所有的field和value
    ●HKEYS:获取-个hash类型的key中的所有的field
    ●HVALS: 获取- -个hash类型的key中的所有的value
    ●HINCRBY:让- -个hash类型key的字段值自增并指定步长
    ●HSETNX: 添加一-个hash类型的key的field值,前提是这个field不存在,否则不执行
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    添加一条数据

    HSET heima:user:3 name lucy
    
    • 1

    访问数据

    HGET heima:user:3 name
    
    • 1

    在这里插入图片描述

    在图形界面中的结构

    在这里插入图片描述

    获取当前字段的全部值

    GETALL heiw:users:1
    
    
    • 1
    • 2

    在这里插入图片描述

    List类型

    在这里插入图片描述

    List的常见命令有:
    ●LPUSH key element... :向列表左侧插入一个或多个元素
    ●LPOP key:移除并返回列表左侧的第一个元素 ,没有则返回nil
    ●RPUSH key element... :向列表右侧插入-一个或多个元素
    ●RPOP key:移除并返回列表右侧的第一个元素”
    ●LRANGE key star end:返回- -段角标范围内的所有元素
    ●BLPOP和BRPOP: 与LPOP和RPOP类似,只不过在没有元素时等待指定时间,而不是直接返回nil
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    在这里插入图片描述

    左侧插入三个元素

    LPUSH users 1 2 3
    
    • 1

    他在图形界面中的循序
    在这里插入图片描述

    右侧插入三个元素

    RPUSH users 4 5 6
    
    
    • 1
    • 2

    在图形界面中跑到了右侧
    在这里插入图片描述

    左右取一个元素

     LPOP users  1 //左边取一个元素
     RPOP users  1 //右边取一个元素
    
    • 1
    • 2

    在这里插入图片描述

    获取角标范围内的元素

    LRANGE users 1 2 //取角标 1 - 2 的元素
    
    • 1

    在这里插入图片描述
    在这里插入图片描述

    BLPOP在没有元素的时候等待指定时间

    BLPOP users 100
    
    
    • 1
    • 2

    在这里插入图片描述

    user2 没有元素所以开始等待 如果没有就返回null

    Set类型

    在这里插入图片描述

    Set类型的常用命令

    ●SADD key member ... :向set中添加一-个或多个元素
    ●SREM key member ... :移除set中的指定元素
    ●SCARD key:返回set中元素的个数
    ●SISMEMBER key mer向ber:判断一个元素是否存在于set中
    ●SMEMBERS: 获取set中的所有元素
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    在这里插入图片描述

    多个集合之间的操作 并集 交集

    在这里插入图片描述

    ●SMEMBERS: 获取set中的所有元素
    ●SINTER key1 key2 ... :求key1与key2的交集
    ●SDIFF key1 key2 ... :求key1与key2的差集
    ●SUNION key1 key2 ..求key1和key2的并集
    
    • 1
    • 2
    • 3
    • 4

    Set的小练习

    在这里插入图片描述

    sadd zs lisi wangwu zhaoliu //添加集合
    sadd ls wangwu mazi ergou
    scard zs // 1题
    SINTER zs ls //2题 交集
    SDIFF zs ls //3题 差集
    SUNION zs ls //4题 并集
    SISMEMBER zs ls //5题 判断是否存在
    SISMEMBER ls zs //6题 判断是否存在
    srem zs lisi //7题 移除元素
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    SortedSet类型 可排序的集合

    在这里插入图片描述

    常用命令有

    在这里插入图片描述

    SortedSet的常见命令有:
    ●ZADD key score member: 添加一一个或多个元素到sorted set,如果已经存在则更新其score值
    ●ZREM key member:删除sorted set中的一-个指定元素
    ●ZSCORE key member :获取sorted set中的指定元素的score值
    ●ZRANK key member:获取sorted set中的指定元素的排名
    ●ZCARD key: 获取sorted set中的元素个数
    ●ZCOUNT key min max:统计score值在给定范围内的所有元素的个数
    ●ZINCRBY key increment member:让sorted set中的指定元素自增,步长为指定的increment值
    ●ZRANGE key min max:按照score排序后,获取指定排名范围内的元素
    ●ZRANGEBYSCORE key min max:按照score排序后,获取指定score范围内的元素
    ●ZDIFF、 ZINTER、 ZUNION:求差集、交集、并集
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    SortedSet练习

    在这里插入图片描述

    // 添加学生成绩
    ZADD stus 85 jack 89 lucy 52 rose 12 tom 63 jerry 92 amy 62 miles
    //删除tom
    zrem stus tom
    //查出rose的排名 查出来的序号是从0开始 rose是1 也就是第二
    ZRANK stus rose
    //降序查询rose的排名
    zrevrank stus rose
    //查看有多少人
    zcard stus
    //查看八十分以下的学生
    zcount stus 0 80 
    //给amy加两分
    ZINCRBY stus 2 amy
    //查询成绩后三名
    zrange stus 0 2
    //查询成绩前三名 先排序后倒序
    ZREVRANGE stus 0 2
    //查询成绩80分以下的具体同学信息
    ZRANGEBYSCORE stus 0 80
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    图形化界面中显示

    在这里插入图片描述

  • 相关阅读:
    代码审计——基础(JAVAEE)
    kkfile配置https预览文件
    ubuntu20下安装nginx插件geoip2查询ip信息
    # Vue3 toRef 和 toRefs 函数
    安装project2016失败:Windows Installer和即点即用版本的Office程序不能并行
    如何使用html、css制作一个期末作业网站【羽毛球体育运动主题html网页设计】
    fltp备份文件后统计验证
    python电影数据可视化分析系统的设计与实现【附源码】
    paddle 训练模型的保持和载入
    用Unity同时开发【微信小游戏】【安卓】【IOS】游戏#6. 网络通信
  • 原文地址:https://blog.csdn.net/qq_45007567/article/details/126092978
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号