• 潭州课堂25班:Ph201805201 redis第四课 (课堂笔记)


    redis支持丰富的数据类型,

    是个非关系型数据库。以键值对存储,存在内存里,

    : string、      字符

      list、        列表

      set、        集合

      zset(sorted set)、  有序集合

      hash        哈西

    进入 数据库:  

      redis-cli    

      keys *  查看所有key,

      set name binbin  str 的操作,set key  value

      

      get name     "binbin"  查看

      type name      string  查看类型

        key只能有一个,再get name 时将覆盖原有的值,  

      append name abc  追加,   

     get name      "binbinabc"

      mset age 12 sex boy  多组一起输入 

      mget age sex       查多个
      1) "12"
      2) "boy"

       del name      删除
      (integer) 1
       get name
      (nil)

      exists name    查看是否存在
      (integer) 0      存在返回 1  不存在返回 0

       expire name 21    为已有的 key 设置存活时间
      (integer) 1    


       ttl name        查看存活时间
      (integer) 17

      set name aa ex 30    在创建的同间设存活时间
      OK
       ttl name
      (integer) 27

      setex name aa  30    另一种方式
      OK

      set read_c 0    加 1 操作
      OK
       incr read_c
      (integer) 1
       incr read_c
      (integer) 2
       incr read_c
      (integer) 3

       decr read_c     减 1 操作
      (integer) 2
       decr read_c
      (integer) 1

       incrby read_c 1000    设加多少,
      (integer) 1000


       decrby read_c 999    设减多少
      (integer) 1

    集合(元序,有序

    sadd set_1 1 2 3 3 4 1 0 4 5 6
    (integer) 7

    smembers set_1
    1) "0"
    2) "1"
    3) "2"
    4) "3"
    5) "4"
    6) "5"
    7) "6"

    srem set_1 6    删除,因为是元序 要指定

    spop set_1     删除  随机

    smove set_1 set_2 1    将 seft_1 中 1 的值移动到 set_2中

    sismember set_2 1     判断该值在不在这个集合里
    (integer) 1         是返回 1,否返回 0

     smembers set_1
    1) "0"
    2) "2"
    3) "3"
    4) "4"
    5) "5"
     smembers set_2
    1) "1"
    2) "4"
    3) "5"
    4) "6"
     sinter set_1 set_2      交集运算
    1) "4"
    2) "5"

    sinterstore new set_1 set_2    交集运算后的结果放进 new 的 key 中
    (integer) 2

    smembers new
    1) "4"
    2) "5"

    sunion set_1 set_2      并集运算

    sunionstore news ste_1 set_2  并集运算后的结果放进 news 里

    sdiff aet_1 set_2        差集运算
    (empty list or set)
    127.0.0.1:6379> sdiffstore s set_1 set_2  差集后的结果放进 s 中

    srandmember new      随机返回
    "5"

    有序集合  zset

    zadd zs 1 a 2 c 3 f    创建有序集合,

    zrange zs 0 -1
    1) "a"
    2) "c"
    3) "f"

    127.0.0.1:6379> zrange zs 0 -1 withscores
    1) "a"
    2) "1"
    3) "c"
    4) "2"
    5) "f"
    6) "3"

    127.0.0.1:6379> zrevrange zs 0 -1    逆序
    1) "f"
    2) "c"
    3) "a"
    127.0.0.1:6379> zrevrange zs 0 -1 withscores
    1) "f"
    2) "3"
    3) "c"
    4) "2"
    5) "a"
    6) "1"
    127.0.0.1:6379>

    zrem zs a    删除
    (integer) 1

    zcard zs  查看元素
    (integer) 2

    count zs a    查看指定元素,


     

    hash 操作

    hset user name binbin    可以理解为 user : { name: binbin }

    hget user name      查看

    hmset user age 15 sex boy addr chan      一次插入多组

    hmget user age addr      一查看多组,
    1) "15"
    2) "chan"

    hkeys user      查看 hash 里边的key
    1) "name"
    2) "age"
    3) "sex"
    4) "addr"

    > hvals user       查看 hash 里的 values
    1) "binbin"
    2) "15"
    3) "boy"
    4) "chan"

    hgetall user      查看所有 k,v
    1) "name"
    2) "binbin"
    3) "age"
    4) "15"
    5) "sex"
    6) "boy"
    7) "addr"
    8) "chan"

    hlen user    查看该 hash 里有几项,
    (integer) 4

    type user
    hash



    list 列表  操作

     lpush l1 1 2     左添加
    (integer) 2
     lpush l1 1 2 3 4
    (integer) 6
     lrange l1 0 -1
    1) "4"
    2) "3"
    3) "2"
    4) "1"
    5) "2"
    6) "1"    他不会覆盖,

     rpush l1 10    右添加
    (integer) 7
     lrange l1 0 -1
    1) "4"
    2) "3"
    3) "2"
    4) "1"
    5) "2"
    6) "1"
    7) "10"

     llen l1
    (integer) 7

    lindex l1 0
    "4"      索引查看,

    lpop l1     左删除
    "4"
     rpop l1    右删除
    "10"

    lrem l1 1 1   指定删除,1 个 为1 的值 ,

    lrem l1 1 2   指定删除 1 个为 2 的值,

    lrem l1 -1 2   指定删除 从右到左删除1 个 为2的值,

    lrem l1 -2 2   指定删除 从右到左 删除2个为2的值,

    lrem l1 0 2   指定删除所有的 为2的值,

  • 相关阅读:
    JSP中page和pageContext的区别
    exe4j生成的exe文件没有把jre文件也打进exe文件中
    exe4j将jar文件和jre文件打包成exe
    exe4j打包jar文件为exe文件出现的问题:The JAVA_HOME environment variable does not point to a working 32-bit JDK or JRE.
    JS作用域
    js 函数
    js数组
    js表达式和语句
    js操作符
    js注释和数据类型转换
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9261466.html
Copyright © 2020-2023  润新知