zoukankan      html  css  js  c++  java
  • 潭州课堂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的值,

  • 相关阅读:
    CSV
    矛与盾热血江湖实现喊话功能
    IDA 使用小结
    OD 命令行插件支持的命令
    Qt TreeView
    矛与盾内存数据的分析
    Windows 内核 I/O 端口操作
    矛与盾注入到目标进程
    Qt 多级menu
    C# 美元转中文
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9261466.html
Copyright © 2011-2022 走看看