Redis中常用的五种数据类型:

image.png

1. 字符串类型

在Redis中,字符串类型是最重要也是最基础的数据类型
image.png
String可以容纳512M,建议单个字符串长度不要超过100k,否则在内存中提取的效率会大大降低!

字符串相关的命令

image.png

① 一次设置多个值

mset name xiaohui age 18 birthday 1999-07-25

即一次设置3个键值对,分别是name=xiaohui, age=18, birthday=1999-07-25

② 一次获取多个key的值

mget name age birthday

即一次获取3个key的值

③ 将指定的key自增/自减1

incr/decr age

即将key=age的值自增/自减1

④ 将指定的key自增或者自减指定的步长(实际开发使用不是很多)

incrby/decrby age 2

即将key=age的值自增/自减2

2. Hash键值类型

hash类型用于存储结构化数据,
即如何存储一名员工的所有属性信息,比如姓名、年龄、身高、工资等?

可以使用hash键值类型,即让一个key对象所需要的多个属性 相当于在key所对应的value中又是一个键值对

image.png

hash类型常用的命令

image.png

3. list列表类型

list列表类型就是一系列字符串的“数组”,按插入顺序排序;

元素必须是字符串

list列表的最大长度为2的32次方减1,可以包含40亿个数据

list类型常用命令

image.png
其中:rpop listkey 弹出了最右侧的a;lpop listkey弹出了最左侧的d

rpush命令,向list追加元素;(新增) rpop命令,将元素从list中弹出;(移除)

查看列表的所有信息

lrange listkey 0 -1 其中0代表起始位置,-1代表末尾位置

4. set与Zset集合类型

set集合是字符串的无序集合,集合成员是唯一的;
Zset集合是字符串的有序集合,集合成员是唯一的;

set集合的使用

① 创建一个set集合

sadd set1 a

即创建一个set集合,key为set1,成员为a(成员必须为字符串)

smembers set1

即查看集合key=set1的所有内容

② 查看两个集合的交集

sinter set1 set2

即获取key=set1和key=set2两个集合的交集,两个集合都有的元素

③ 查看两个集合的并集,即将两个集合元素合并在一起

sunion set1 set2

即返回set1和set2集合的所有元素(去重后)

④ 查看两个集合的差集

sdiff set1 set2

即返回set2中不存在于set1中的所有元素

Zset集合的使用

① 创建一个Zset集合

zadd zset1 100 a

即新增一个key=zset1的Zset集合,其中100为排序的序号,a为元素字符串

zadd zset1 101 b zadd zset1 99 c

则最终key=zset1的Zset集合中的数据为:

c a b

即安装排序的序号进行排序的结果
② 查看Zset集合数据

zrange zset1 0 -1

即查看key=zset1的集合所有内容,其中0为起始位置,-1代表所有
③ 以排序序号作为依据进行数据的筛选

zrangebyscore zset1 100 103

即获取key=zset1的Zset集合中,排序序号为100-103(最小为100,最大为103)的数据