zoukankan      html  css  js  c++  java
  • redis的入门篇---五种数据类型及基本操作

    查看所有的key

    keys *

    清空所有的key

    flushall

    检查key是否存在

    exists key

    设置已存在的key的时长

    expire key  10      //设置key为10s

     查看key还剩多少时长

    ttl key   //-1是永久    -2是不存在

    查看key的类型

    type key

     随机取出一个key

    randomkey

     重命名key

    rename key  newkey    //如果key存在  直接覆盖

    renamenx key newkey //如果key存在 则失败 返回0

     设置一定时间的key

    setex key seconds val    //key  时间   val

    psetex key seconds val //和上面的功能一样 只不过多加一个p 区别是上面的时间是秒级别的 这个是毫秒级别的

     字符串类型:

    得到指定范围的字符串

    getrange key 0 2    //闭合区间  取三个长度的字符串

     得到旧的值并赋予新的值

    getset key newval   
    
    //比如说get a    得到A
    //然后getset a AA  还是得到A
    //但此时get a    得到的是AA

    在字符串后面追加字符串

    append key  append    //意思是在key的val后面加上append字符串

     hash哈希(其实就是一个Map<String,Map<String,String>>格式的数据结构)

    设置值

    hset map name  liuzhonghua   //成功1  

    检验是否存在

    hexists map name     //存在1   不存在0

    得到值

    hget map name    //返回liuzhonghua

     得到key所有的值

    hgetall  map   
    
    //返回  下面的这中格式    key val  key  val
    
    name
    liuzhonghua
    age
    23
    sex
    man

     得到值里面所有的key 和所对应的val

    hkeys map  
    
    //返回
    
    name
    age
    sex

    hvals map 
    liuzhonghua
    23
    man

     list列表

    lpush list 1 2 3 4 5 6  //lpush 特点是最后放进去的总是在第一位

    取一定范围的list值和特定索引的值

    lrange list 0 2  //得到1 2 3
    
    
    lindex list 3    //得到4

     移除最后一个元素和第一个元素

    lpop list  //移除第一个元素  6  返回6
    
    rpop list   //移除最后一个元素 1  返回1 

    将指定下标元素替换

    lset list 0 a  //将下标为0的元素替换成a

    删除元素,返回元素个数

    LREM KEY_NAME COUNT VALUE  // 被移除元素的数量。 列表不存在时返回 0 。

    set列表(特点:无序,不保证你放进去的和得到的顺序一致,值不重复)

    增加

    sadd set a b c d   //key是set    val 是  a b c d

    得到这个集合的数量

    scard  set        //返回4

    查看key的val

    smembers  set  //a b c d

     两个集合的差集

    sdiff set1 set2  //意思是set1 里面的值减去 set2里面的值  得到set1里面的值

     两个集合的交集

    sinter set1  set2

    两个集合的并集

    sunion set1 set2

    返回指定数量的随机数

    srandmember  set1  2     //随机返回set1的两个值

    判断是否是集合的元素

    sismember set1 a   //如果是 返回1  否则返回0

     移除指定的val

    srem set1 a b      //移除set1集合里面的a和b   返回成功的个数  2

     随机移除set里面的val 并返回移除的值

    spop  set1   //随机返回一个值

     zset (有序集合,不重复)

    增加(还得必须这样写  真操蛋  看不懂   后面都是一对一对的    艹,,,我懂了,100这样的数值是必须写的,因为是靠他们排序的,我们平常获取的值都是abc

    这样的,切记)填坑,很有用这样的属性!!!!!!!!!!!!!

    zadd zset  100 a  200 b  300 c    // key是zset  a的分数是100   b的分数是200   c的分数是300

     查看有几个元素

    zcard zset    //返回3

     查看指定的某个值(还得必须这样写  )

    zscore zset a    //返回100   

     返回符合指定区间的数量

    zcount zset  0 200   //返回2   闭合区间  就是说a 和 b 他俩所对应的值在0和200之间  符合要求

     查看索引

    zrank zset a    //0  
    zrank zset b    //1  
    zrank zset c    //2  

     增加值

    zincrby zset 1000 a   //意思是让a的值增加1000  当然a的顺序也会改变,因为zset是有序的 是根据他所对应的值来排序的

    获取指定的元素

    zrange zset  0  100    //意思是获取zset的前100个元素   a b c 

    如果想获取一对一对的 比如说 a 100 b 200 c 300

    zrange zset 0 100 withscores

      高能预警:介绍几个常用的方法    (zset有序集合的方法)

      Redis Zremrangebyrank 命令:  http://www.runoob.com/redis/sorted-sets-zremrangebyrank.html

                           Redis Zremrangebyrank 命令用于移除有序集中,指定排名(rank)区间内的所有成员。  返回  被移除成员的数量。

         Redis Zrevrange 命令        :   http://www.runoob.com/redis/sorted-sets-zrevrange.html

           Redis Zrevrange 命令返回有序集中,指定区间内的成员。其中成员的位置按分数值递减(从大到小)来排列 

     

     

  • 相关阅读:
    SQL server多表联合查询
    Linux at命令
    git用法总结详细
    vue插槽
    vue组件通信
    vue高阶函数
    vue过滤器
    vue侦听器watch
    Vue 计算属性 computed
    Spring事务失效的场景
  • 原文地址:https://www.cnblogs.com/coder-lzh/p/8720084.html
Copyright © 2011-2022 走看看