美文网首页
Redis系列第二篇:数据类型

Redis系列第二篇:数据类型

作者: ningsiy | 来源:发表于2018-11-23 23:11 被阅读0次

    一、Redis数据类型

    下图展示了Redis的五种数据类型及其介绍。


    二、各种数据类型的操作

    1. string 类型
    • 使用 set 和 get 命令对 string 类型进行设置和获取。

    如果出现中文乱码,连接客户端代码改为:redis-cli --raw -h 127.0.0.1 -p 7200

    • value 为 int 的加减运算

    incr key 对当前键的值进行自增操作
    decrby key number 对当前键的值进行减法运算,第三个参数为要减去的数


    2. list 类型
    • 先进先出,最基本的操作为 push、pop 命令

    从左边压入元素,从右边弹出元素:


    • list 类型中的元素可以重复

    llen key 返回当前列表中元素的个数,即为列表长度。下图是进行了4次 lpush 操作,压入的是两个相同的值。


    3. set 类型
    • set 类型中元素是无序的,而且不能重复

    sadd key value (往 set 中插入元素)
    scard key (查看集合中元素的个数)
    下图对 set1 进行了三次添加操作,其中两个元素重复了,所以集合 set1 中元素的个数为2


    • 查找某一元素是否在集合中

    sismember 集合名 元素 (判断元素是否在该集合中)
    srem 集合名 元素 (从该集合中删除该元素)
    下图中,先判断 5 是否在 set1 中,之后删除5,再次判断,返回0。


    4. hash 类型

    hash类型也称为散列类型,用户可以将多个键值对存储到一个Redis键(key)中。


    • 对键值对操作

    hset hash1 key1 value (往 hsah1 中 添加一个键值对)
    hget hash1 key1 (获取hash1 中key1 的值)
    hlen hash1 (查看hash1中元素的个数)
    下图中,往hash1中添加了两个 20,但是key不一样,所以hash1中元素的个数为3。



    接着,将hash1中key3的值改为 30:



    hmget hash1 key1 ... keyn (一次性获取hash1中多个键的元素)
    5. zset(sort set)类型
    • 有序分数集合,value 必须是唯一的,score 可以相同。如果两个元素 score 相同,排序则按照 value 的字典顺序排

    zadd zset1 5.5 value1 //增加一个分数为5.5,值为value1的映射到 zset1
    zcard zset1 //查看 zset1 中元素的个数

    zrange zset1 0 2 withscores (将 zset1 中的元素从 0~2 排序并打印出分数)
    zrank zset1 value2 (查看 value2 在 zset1 中的排名)

    将value 的score 修改为5.5 (和 value1 的score相同),再次排序。可以看到value3 排到了第二名,这是因为 value3 的字典顺序比 value1 靠后。

    本篇主要总结了Redis的五种数据类型及其基本操作,至于应用场景,会接着在这里更新。

    相关文章

      网友评论

          本文标题:Redis系列第二篇:数据类型

          本文链接:https://www.haomeiwen.com/subject/azqsqqtx.html