本文主要是介绍02 Redis 数据类型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Redis 数据类型
String 类型
字符串类型是Redis中最为基础的数据存储类型,它再Redis中是二进制安全的,这便意味着该类型可以接收任何格式的数据,如JPEG图像数据或Json对象描述信息等。
在Redis中字符串类型的Value最多可以容纳的数据长度是512M。
保存
如果设置的键不存在则为添加,如果设置的键已经存在则修改。
1、设置键值
set key value
set name itcast
![](/upload/202206/06/202206060220007531.png)
2、设置键值以及过期时间,以秒为单位
setex key seconds value
- 例2:设置键为aa,值为aa,过期时间为3秒的数据
setex aa 3 aa
![](/upload/202206/06/202206060220008468.png)
3、设置多个键值
mset key1 value1 key2 value2 ...
- 列3:设置键为a1,值为python、键为a2,值为java、键为a3,值为c
mset a1 python a2 java a3 c
![](/upload/202206/06/202206060220009249.png)
4、追加值
append key value
- 例4:向键为a1中追加值haha
![](/upload/202206/06/202206060220010045.png)
获取
获取:根据据键获取值,如果不存在此键则返回nil
get key
get 'name'
根据多个键获取多个值
mget key1 key2 key3...
mget a1 a2 a3
删除
查看键命令
键命令
1、查找键,参数支持正则
keys pattern
keys *
![](/upload/202206/06/202206060220010826.png)
keys 'a*'
![](/upload/202206/06/202206060220011779.png)
2、判断键是否存在,存在返回1,不存在返回0
exists key1
exists a1
![](/upload/202206/06/202206060220012560.png)
3、查看键对应的value的类型
type key
- 例4: 查看键a1的值类型,为redis支持的五种类型中的一种
吧
4、删除键及对应的值
del key1 key2 ...
del a2 a3
![](/upload/202206/06/202206060220013507.png)
5、 设置过期时间,以秒为单位
- 如果没有指定过期时间则一直存在,指导使用DEL移除
expire key seconds
expire 'a1' 30
![](/upload/202206/06/202206060220014293.png)
6、查看有效时间,以秒为单位
ttl key
ttl a3
![](/upload/202206/06/202206060220015075.png)
hash类型
- hash用于存储对象,对象的结构为属性、值
- 值的类型为string
增加、修改
1、设置单个属性
hset key field value
- 例1:设置键hash的属性name为01
![](/upload/202206/06/202206060220015871.png)
2、设置多个属性
hmset key field 1 value1 field2 value2 ...
- 例2:设置u2的属性name为itcast、属性age为11
hmset u2 name itcast age 11
![](/upload/202206/06/202206060220016964.png)
获取
1、获取指定键所有的属性
hkeys key
hkeys u2
![](/upload/202206/06/202206060220017760.png)
2、获取一个属性的值
hget key field
hget u2 name
![](/upload/202206/06/202206060220018541.png)
3、获取多个属性的值
hmget key field1 field2 ...
hmget u2 name ago
![](/upload/202206/06/202206060220019323.png)
4、获取所有属性的值
hvals key
- 例6: 获取u2所有属性值
![](/upload/202206/06/202206060220020275.png)
删除
1、删除整个hash键及值,使用del命令
del key
2、删除属性, 属性对应的值会被一起删除
hdel key field1 field2 ...
hdel u2 age
![](/upload/202206/06/202206060220021056.png)
list类型
增加
1、在左侧插入数据
lpush key value1 value2 ...
lpush a1 a b c
![](/upload/202206/06/202206060220021794.png)
2、在右侧插入数据
rpush key value1 value2 ...
rpush a1 0 1
![](/upload/202206/06/202206060220022731.png)
3、在指定元素的前后插入新数据
insert key before|after 现有数据 新元素
insert before b 3
![](/upload/202206/06/202206060220023527.png)
获取
1、返回列表里指定范围内的元素
- start、stop为元素的下标索引
- 索引从左侧开始,第一个元素为0
- 索引可以是负数,表示从尾部开始计数,如-1表示最后一个数
lrange key start stop
lrange a1 0 -1
![](/upload/202206/06/202206060220024323.png)
2、设置指定索引位置的元素值
- 索引从左侧开始,第一个元素为0
- 索引可以是负数,表示尾部开始计数,如-1表示最后一个元素
lset key index value
lset a1 1 R
![](/upload/202206/06/202206060220025104.png)
删除
1、删除指定元素
- 将列表中前count次出现的值value的元素移除
- count > 0: 从头往尾移除
- count < 0: 从尾往头移除
- count = 0: 移除所有
lrem key count value
- 例6.1:向列表a2中加入元素'a'、'b'、'a'、'b'、'a'、'b'
lpush a2 a b a b a b
![](/upload/202206/06/202206060220025934.png)
lrem a2 -2 b
![](/upload/202206/06/202206060220026871.png)
set类型
- 无序集合
- 元素为string类型
- 元素具有唯一性, 不重复
- 说明:对于集合没有修改操作
增加
1、添加元素
sadd key member1 member2 ...
- 例1: 向键a3的集合中添加元素zhangsan、lisi、wangwu
sadd a3 zhangsan lisi wangwu
![](/upload/202206/06/202206060220027667.png)
获取
1、返回所有的元素
smembers key
smembers a3
![](/upload/202206/06/202206060220028448.png)
删除
1、删除指定元素
srem key
srem a3 wangwu
![](/upload/202206/06/202206060220029230.png)
zset类型
- sorted set 有序集合
- 元素为string类型
- 元素具有唯一性
- 每个元素都会关联一个double类型的score, 表示权重,通过权重将元素从小到大排序
- 说明:没有修改操作
增加
1、添加
zadd key score1 member1 score2 member2
- 向键a4的集合中泰纳及元素lisi、wangwu、zhaoliu、zhangsan 权重分别为4、5、6、3
zadd a4 4 lisi 5 wangwu 6 zhaoliu 3 zhangsan
![](/upload/202206/06/202206060220030026.png)
获取
1、返回指定范围内的元素
- start、stop为元素的下标索引
- 索引从左侧开始,第一个元素为0
- 索引可以是负数, 表示从尾部开始计数,如-1表示最后一个元素
zrange key start stop
zrange a4 0 -1
![](/upload/202206/06/202206060220030963.png)
2、返回score值在min和max之间的成员
zrangebyscore key min max
zrangeby a4 5 6
![](/upload/202206/06/202206060220031759.png)
3、返回成员member的score值
zscore key member
- 例4:获取键a4的集合中元素zhangsan的权重
zscore a4 zhangsan
删除
1、删除指定元素
zrange key member1 member2 ..
zrem a4 zhangsan
![](/upload/202206/06/202206060220032540.png)
2、删除权重在指定范围的元素
zremrangebyscore key min max
zremrangebyscore a4 5 6
![](/upload/202206/06/202206060220033478.png)
这篇关于02 Redis 数据类型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!