Redis 哈希(Hash)🍉
Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。
Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)
它的value就是一个hash类型,而hash类型的结构key value形式。一般用于存放对象数据。
Redis hash 命令🥝
//将哈希表 key 中的字段 field 的值设置为value
hset key field valus [field value]
//获取存储在哈希表中指定字段的值
hget key field
//获取在哈希表中指定 key 的所有字段和值
hgetall key
//获取所有哈希表中的字段
hkeys key
//获取哈希表中所有值
hvals key
//删除一个或多个哈希表字段
hdel key field
Redis 列表(List)🍉
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
它的value是一个List数据类型,value可以是多个,而且有序,可以重复。
Redis 列表命令🥝
//在列表中添加一个或多个值
lpush key element [element...]
//获取列表中指定下标的元素
Lindex key index
//获取一定范围的元素。第一个为0 最后-1
lrange key start end
//移除左边第n个元素
lpop key 数字
//替换指定位置的元素内容
lset key index element
Redis 集合(Set)🍉
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
集合对象的编码可以是 intset 或者 hashtable。
Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。
集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
它和list类型差不多,只是它的值不允许重复,而且是无序。
Redis 集合命令🥝
//在集合中添加一个或多个值
sadd key element[element....]
//获取集合中所有的元素。
smembers key
//返回给定所有集合的交集
sinter key1 key2
//返回给定所有集合的差集
sdiff key1 key2
Redis 有序集合(sorted set)🍉
Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
它和set比较相似,它在添加元素时,指定了分数值,按照分数排序。排行榜。
Redis 有序集合命令🥝
//添加有序集合元素
// zadd k1 分数 v名称 分数 v名称 ...
zadd key score element [score element ...]
// 从小到大的形式获取集合中的元素
//zrange k1 起始索引下标 终止索引下标
zrange key start end [withscopes]
//从大到小的形式获取集合中的元素
//zrevrange k1 起始索引 终止索引
zrevrange key start end [withscopes]
//移除集合中一个或多个元素
//zrem k1 元素名
zrem k1 element [element]:
详细学习网址:
https://www.runoob.com/redis/redis-hashes.html