• Redis_常用5大数据类型简介


      前面介绍了一些redis的的基本配置,以及安装,本文继续学习redis的五大数据类型。

    一、Redis的五大数据类型

      String(字符串)List(列表)、Set(集合)、Hash(哈希,类似java里的map)、Zset(sorted set:有序集合)

    二、那里去获取Redis的常见数据类型操作命令

      Http://redisdoc.com/

    三、Redis键(key)

      常用的key命令:

       keys *(查询所以的key)

      exists key 判断某个key是否存在(1表示存在,0表示不存在)

      move key db(将某个key移动到其他库中)

      expire key 秒:为给定的key设置过期时间(返回1表示成功)

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

      type key 查看key是什么类型

      注意:在set时,如果key存在,则后面的value值将会覆盖之前的value值

    四、Redis字符串(String)

      String是redis最基本的类型,你可以理解成与Memcached一样的类型,一个key对应一个value。

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

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

      set 设置值,get获取值,del删除值

      append(拼接String,返回value长度),strlen(获取String长度)

      incr key +1,decr key -1,incrby key n +n, decrby key n -n(需要注意的是,只有数字才可以操作)

      如果不是数字,则会报错。

      getrange:获取指定区间范围内的值,类似between...and的关系。(注意:从0到-1表示全部)

      setrange:设置指定区间范围内的值,格式是settrange key值 具体值

      setex(set with wxpire)键秒值:设置key/value时设置存活时间

      setnx(set id not exist)设置key 如果key存在则插入数据失败 返回0

      mset(批量插入数据)/mget(批量获取数据)/msetnx(批量使用setnx插入数据)

     

    五、Redis列表(List)

      Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部或者尾部。它的底层是一个链表。

      lpush key v1 v2 v3(插入list返回长度)

      rpush key (在最后加入value的值) lpush key(在最前面加入value的值)

      lrange key n n (查询list的值,0 到 -1为全部)

      lpop 从左删除 rpop从右删除

      lindex 按照索引获取元素(从上到下)

      llen 查看list中元素个数

      lrem key n value 删除n个value,如果value值不够则删除所有的这个value值返回删除个数

      ltrim key 开始 index 结束index,截取知道范围的值后赋值给key

     

      rpoplpush key1 key2 将key1的右侧value到key2中

      lset key index value 给具体下标位置设置value,如果该下标不存在则报错

      linsert key before/after 值1 值2(在值1之前/之后插入值2,如果有重复的值则会在第一个前后进行插入)

      总结:

        它是一个字符串链表,left,right都可以插入添加

        如果键不存在,创建新的链表,如果键已经存在则新增内容

        如果内容全部移除。对应的键也消失。

        链表的操作无论是在头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡。

    六、Redis集合(Set)

      Redis的Set的histring类型的无序集合。他是通过HashTable实现的。

    七、Redis哈希(Hash)

      Redis hash是一个键值对集合。

      Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

      类似Java里面Map<String, Object>

    八、Redis有序集合Zset(sorted set)

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

      不同的是每个元素都会关联一个double类型的分数。

      redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

  • 相关阅读:
    Nginx 允许多个域名跨域访问
    mongo 命令
    PyTorch torch.cuda.device_count 返回值与实际 GPU 数量不一致
    APUE 学习笔记 —— 文件I/O
    Django transaction 误用之后遇到的一个问题与解决方法
    如何更新 CentOS 镜像源
    Supervisor 的安装与配置教程
    Sentry的安装搭建与使用
    Python, Django 性能分析工具的使用
    记一次 Apache HUE 优化之因使用 Python 魔术方法而遇到的坑
  • 原文地址:https://www.cnblogs.com/wuyx/p/8675610.html
Copyright © 2020-2023  润新知