Redis6-01


目录:

  Redis6

    第3章 常用的五大数据类型

      3.1 Redis键(key)

      3.2 Redis字符串(String)

      3.3 Redis列表(List)

Reis6

  第3章 常用的五大数据类型

    3.1 Redis键(key)

      keys *:查看当前库所有的键

      exists key:判断是否存在key

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

      del key:删除指定的key数据

      unlink key:根据value选择非阻塞删除

      expire key n:设置key的过期时间为n秒

      ttl key:查看key的过期时间,-1为永不过期,-2表示已经过期

      select n:切换数据库为n号库。

          默认有16数据库,类似数组下标从0开始,初始默认使用0号库。

      dbsize:查看数据库的key的数量

      flushdb:清空当前库

      flushall:通杀全部库

    3.2 Redis字符串(String)

      (1)简介

        Stirng是Redis最基本的类型,String类型是二进制安全的,意味着string可以包含任何数据,Redis中的value最多可以存储512M。 

      (2)常用命令

        set key value:添加键值对

        mset key1 value1 keyn valuen:同时添加多个key-value对

        setnx key value:添加键值对,只有在键不存在的时候添加才能成功。

        msetnx key1 value1 key2 value2:添加多个键值对,只有在键不存在的时侯才能添加成功。

        get key:查询键对应的值

        mget key1 keyn:查询多个键对应的值

        append key value:将给定的value追加到原始值的末尾

        incr/decr key:将key中存储的数字增/减1,

        incrby/decrby key n:将key中存储的数组增/减n。

        strlen key:获取key对应的value的长度

        getrange key 起始位置 结束位置:获取key从起始到结束位置的字符串,相当于subString(start,end)

        setrange key 起始位置 value:用value替换key从"起始位置"后字符

        setex key 过期时间 value:添加键值对的同时设置过期时间

        getset key newvalue:给key设置newvalue的同时获取旧oldvalue

    3.3 Reids列表(List)

      (1)简介

        Redis列表是简单的字符串列表,按照插入顺序排序。它的底层实际是个双向链表,对两端的操作性能高,通过索引下标操作中的的结点性能差。


      (2)常用命令

        push/rpush key value1 valuen:从左边/右边插入一个或多个值。

        lpop/rpop key:从左侧/右侧吐出一个值。

        rpoplpush key1 key2:从key1列表的右侧吐出一个值,插入到key2列表的左侧

        lrange key :获取指定key的索引范围内的元素

            lrange key 0 -1 :获取key的所有元素,0左边的第一个元素,-1右边的第一个元素

        lindex key :按照索引下表获得元素

        llen key:获取列表的长度

        linsert key before value newvalue:在value后(左侧)插入newvlaue

        lrem key n value:删除第n个value

        lset key value:将列表key中下标为index的值替换成value

    3.4 Redis集合(Set)

      (1)简介

        Redis的set是string类型的无序集合,它底层其实是一个value为null的hash表。

      (2)常用命令

        sadd key value1 valuen:将一个或多个元素添加到集合key中,已经存在元素将被忽略。

        smembers key:取出该集合的所有值

        sismember key value:判断集合key是否含有该value值,1表示有,0表示没有

        scard key:返回该集合的元素个数

        srem key value1 valuen:删除集合中的多一个元素

        spop key:随机吐出一个值

        srandmember key n:随机从该集合中取出n个值,不会从集合中删除。

        smove skey tkey value:把一个元素value从原集合skey移动到目标集合tkey。

        sinter key1 key2:返回两个集合的交集元素。

        sunion key1 key2:返回两个集合的并集元素。

        sdiff key1 key2:返回两个集合的差集元素,(key1中的,不包括key2中的)

      (3)Redis中Set集合数据结构

          Set集合的数据结构是dict字典,字典是用哈希表实现的。内部是hash结构。

    3.5 Redis哈希(Hash)

      (1)简介

        Redis hash是一个键值对集合。

          Redis hash是一个string类型的field和value的映射表。

      (2)常用命令

        hset key field vlaue:给key集合中的field键赋值value

        hmset key field1 value1 field2 value2:批量设置hash的值

        hget key field:获取key集合field键的值

        hexists key field:查看key集合中,field键是否存在

        hkeys key:获取hash集合key中所有的field

        hvals key:获取hash集合key中所有的value

        hincrby key field n:给hash集合key中的field键的值增加n

        hsetnx key field value:设置hash集合key中的域field的值设置为value,当field不存在的时候。