本文已参与「新人创作礼」活动,一起开启掘金创作之路。 @[TOC](Redis 数据类型)
五大数据类型
- String(字符串)
- Hash(哈希)
- List(列表)
- Set(集合)
- zset(sorted set:有序集合)
String(字符串)
介绍
- string是redis最基本的类型,一个key对应一个value
- string类型是二进制安全的,除普通的字符串外,也可以存放图片等数据
- redis中字符串value最大是512M
- redis存储中文字符时会自动转码
字符串的CURD操作
//添加和修改
set key value
当key不存在自动创建,当key存在则覆盖
//删除
del key
//获取
get key
//添加有时限的key
setex key time value
//添加多个key
mset key value [key value ...]
//获取多个key的值
mget key [key ...]
Hash(哈希)
- Redis hash是一个键值对集合
- Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象
Hash的CURD操作
//给key添加一个字段
hset key field value
//给key添加多个字段
hmset key field value [field value ...]
//获取指定key
hget key field
//获取全部字段
hgetall key
//删除key中某个或多个字段
hdel key field [field ...]
List(列表)
- 列表是简单的字符串列表,按照插入顺序进行排序,可以添加一个元素到头或者尾
- List本质是个链表,List的元素是有序的,元素的值可以重复
List的CURD操作
//给key从头开始添加值
lpush key value [value ...]
//给key从尾开始添加值
rpush key value [value ...]
//获取指定区间内的元素
lrange key start stop
//删除key中的头元素
lpop key
//删除key中的尾元素
rpop key
//删除key
del key [key ...]
Set(集合)
- Redis的Set是string类型的无序集合
- 底层是HashTable数据结构,Set也是存放很多字符串元素,字符串元素是无序的,而且元素的值不能重复
Set的CURD操作
//添加
sadd key member [member ...]
//取出所有值
smembers key
//判断值是否是成员
sismember key member
//删除指定值
srem key member [member ...]