Redis数据类型

Redis键(Key)

  常用命令

    keys *:查询所有的key

    exists key:判断某个key是否存在

    move key db:将key值移动到其他库

    expire key:为给定的key设置过期时间

    ttl key:查看还有多少秒过期,-1表示永不过期,-2表示已过期

    type key:查看你的key是什么类型

    select db:切换库

 

Redis五大数据类型

1.String(字符串)

  String是redis最基本的类型,一个key对应一个value

  String类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象

  String类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M

  常用命令

    set key:设置key值

    get key:获取key值

    del key:删除key值

    append key:往key追加值

    strlen key:key值的长度

    getrange key:获取指定区间范围内的值,类似between...and的关系

    

    setrange key:设置指定区间范围内的值(替换区间内的值),格式是setrange key值

    

    setex(set with expire):设置key存活时间,语法(SETEX KEY_NAME TIMEOUT VALUE

    

 

 

       setnx(set if not exist):在指定的 key 不存在时,为 key 设置指定的值(设置成功,返回 1 。 设置失败,返回 0 。)

    mset:用于同时设置一个或多个 key-value 对。

    mget: 命令返回所有(一个或多个)给定 key 的值。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。

    

    msetnx :命令用于所有给定 key 都不存在时,同时设置一个或多个 key-value 对。

  值是数字才能进行操作的命令

    incr key:对值加1

    decr key:对值减1

     incrby key num:对值加多少(num为需要加的数字)

    decrby key num:对值减多少(num为需要减的数字)

2.List(列表)

  是简单的字符串列表,按照插入顺序排序,你可以添加一个元素导列表的头部(左边)或者尾部(右边)

  它的底层实际是个链表

  常用命令

    lpush key:(先进后出)

    

    rpush key:(先进先出)

    

    lrange key:

    lpop与rpop 

    

 

 

     lindex key:按照索引下标获取元素(从上至下)

    

 

 

     llen key:list的长度

    lrem key:删除N个值为多少元素

    

    ltrim key:截取指定范围的值后再赋值给key

    

 

 

     rpoplpush key1 key2:

    

 

 

     lset key index value

    

    linsert key before/after key1 key2

    

 

 

 

3.Set(集合)

  是string类型的无序集合。它是通过HashTable实现的

  常用命令:

    sadd/smembers/sismember

    sismember 命令判断成员元素是否是集合的成员(0不是 1 是)。

    

    scard key:获取集合里的元素个数

    srem key value:删除集合中元素

    srandmember key num(数量):随机出几个数

    spop key:随机出栈(移出)

    smove key1 key2 value:把key1的值移动到key2

    sdiff:差集

    

    sinter:交集

    

    sunion:并集

    

4.Hash(哈希,类似java里的Map)

  是一个键值对集合

  是一个string类型的field和value的映射表,hash特别适合用于存储对象,类似java中的Map<String,Object>

  常用命令

    hset

    

 

      hget

    

 

      hmset

    

 

      hmget

    

 

      hgetall

    

     hdel

    

     hlen

    

 

      hexists key:在key里面的某个值存不存在

    

 

      hkeys:获取key

    

 

      hvals:获取value

    

        hincrby:某个元素的值进行加法运算

    

 

       hincrbyfloat:某个元素的值进行加法运算(小数)

    

    hsetnx:是否存在,存在就不添加,不存在则添加

    

5.Zset(sorted set:有序集合)

   zset和set一样也是string类型元素的集合,且不允许重复的成员

  不同的是每个元素都会关联一个double类型的分数,用这个分数来为集合中的成员进行从小到大的排序,

  zset的成员是唯一的,但分数(score)却可以重复

  常用命令

    zadd

    

 

     zrange

    

 

     zrangebyscore key 开始score 结束score

    

 

       不包含

      

 

       limit

      

 

     zrem key 某个score对应的值 ,进行删除

    

 

     zcard

    

 

     zcount key score区间

    

 

     zrank key values值 :获取下标值 

    

    zscore key value值:获得分数

    

    zrevrank key value值:获得倒序后的下标值

    

 

     zrevrange:倒序

    

 

     

posted @ 2021-02-26 10:30  学习大数据入门到放弃  阅读(125)  评论(0)    收藏  举报