Redis的五种数据类型 #系统架构设计师#

数据类型 说明 常用方法
string String类型是包含很多种类型的特殊类型,并且是二进制安全的。比如序列化的对象进行存储,比如一张图片进行二进制存储,比如一个简单的字符串、数值等等、

set、get、del方法:

      设置值:set name bhz

      取值 get name (说明 设置name多次会覆盖)

      删除值:del name

使用setnx (not exist)

     name 如果不存在进行设置,存在就不需要进行设置,返回0

使用setex (expired)

     setex color 10 red 设置color的有效期为10秒,10秒后返回nil (在redis里nil表示空)

使用setrange 替换字符串:

    set email 674897610@qq.com

    setrange email 10 ww (10表示从第几位开始替换,后面跟上替换的字符串)

使用一次性设置多个和获取多个值的mset,mget方法:

      mset key1 bhz key2 bai key3 28 :对应的mget key1 key2 key3 方法

      对应的也有msetnx 和 mget方法。

一次性设置和取值的getset方法;

     set key4 cc

     getset key4 changchun 返回旧值并设置新值的方法。

incr和decr方法:对某一个值进行递增和递减

incrby和decrby方法:对某个值进行指定长度的递增和递减 incrby key 【步长】

append [name]方法:字符串追加方法

strlen [name]方法:获取字符串的长度

Hash

哈希是一种键值对结构,适合管理用户信息等管理。哈希表的底层实现方式包括预分配和惰性空间释放。

hset myhash filed1 hello(含义是hset是hash集合,myhash是集合的名字 filed1是字段名 hello是其值)使用hget myhash field1 获取内容 ,也可以存储多个值。hmset可以进行批量存储多个键值对;hmset myhash sex nan addr beijing,也可以使用hmget进行批量获取多个键值对。

同样也有hsetnx,和setnx类似;

hincrby和hdecrby 集合递增和递减

hexists 是否存在key,如果存在返回,不存在返回0

hlen 返回hash几个里的所有的键数值

hdel 删除指定hash的field

hkeys 返回hash里所有的字段

hvals 返回hash的所有value

hgetall 返回hash里所有的key和value

List List类型是以一个链表结构的集合,主要功能有push、pop、获取元素等。更消息的说,List类型是一个双端链表的结构,

lpush方法:从头部加入元素,先进后出          lpush list1 "hello"    

rpush方法:从尾部加入数据,先进先出     rpush list2 "hangzhuo"

linsert方法:插入元素     linsert list2 before [集合元素]  [插入元素]

Set

集合不允许有重复的元素,元素是无序的。集合的底层实现方式包括跳跃表的空间重分配。对集合可以取交集,并集,差集。

sadd,添加

srem 删除

spop 随机删除

Zset

有序集合则是在Set的基础上增加了元素的排序功能。有序集合的底层实现方式包括hash的rehash。

1. ZADD:添加新的有序元素到集合中,同时可以指定元素的关联分数。

2. ZREM:从有序集合中删除指定的元素。

3. ZINCRBY:向指定的元素增加关联分数。

4. ZINCRBYFLOAT:向指定的元素增加一个浮点数形式的关联分数。

5. ZDECRBY:向指定的元素减少关联分数。

6. ZDECRBYFLOAT:向指定的元素减少一个浮点数形式的关联分数。

7. ZRANGE:获取有序集合中指定范围内的元素,包括元素本身和关联分数。

8. ZRANK:获取指定元素在有序集合中的排名。

9. ZCOUNT:获取有序集合中指定范围内的元素数量。

10. ZRANGEBYLEX:获取有序集合中按照元素的字母顺序排列的元素。

11. ZREVRANGE:获取有序集合中指定范围内的元素,包括元素本身和关联分数,但返回的结果是反向的。

12. ZREVRANK:获取指定元素在有序集合中的反向排名。

13. ZSCORE:获取指定元素的关联分数。

14. ZUNIONSTORE:将多个有序集合合并为一个新的有序集合。

15. ZINTERSTORE:将多个有序集合按照指定的关联分数进行交并运算,得到一个新的有序集合。

16. ZREMRANGEBYLEX:按照元素的字母顺序,从有序集合中删除指定范围内的元素。

17. ZREMRANGEBYRANK:按照元素的排名,从有序集合中删除指定范围内的元素。

18. ZREMRANGEBYSCORE:按照元素的关联分数,从有序集合中删除指定范围内的元素。

19. ZREVRANGEBYLEX:按照元素的字母顺序,从有序集合中获取指定范围内的元素。

20. ZREVRANGEBYRANK:按照元素的排名,从有序集合中获取指定范围内的元素。

21. ZREVRANGEBYSCORE:按照元素的关联分数,从有序集合中获取指定范围内的元素。

 

 

2023年的软考案例分析中出现了考察Redis命令的题目。

相关推荐

  1. Redis数据类型 #系统架构设计师#

    2024-07-12 13:20:03       25 阅读
  2. Redis基本数据类型

    2024-07-12 13:20:03       26 阅读
  3. Redis教程(三):Redis基本数据类型

    2024-07-12 13:20:03       29 阅读
  4. Redis基本数据类型

    2024-07-12 13:20:03       43 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 13:20:03       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 13:20:03       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 13:20:03       57 阅读
  4. Python语言-面向对象

    2024-07-12 13:20:03       68 阅读

热门阅读

  1. netstat 和ss命令

    2024-07-12 13:20:03       21 阅读
  2. 标准盒模型和怪异盒子模型的区别

    2024-07-12 13:20:03       22 阅读
  3. flink 配置表

    2024-07-12 13:20:03       30 阅读
  4. 无障碍快捷方式图标

    2024-07-12 13:20:03       26 阅读
  5. 每天一个数据分析题(四百二十三)- 置信区间

    2024-07-12 13:20:03       18 阅读
  6. 原来没分库分表,后期如何分库分表?

    2024-07-12 13:20:03       21 阅读