String
String是最常用的一种数据类型,普通的key/value存储都可以归为此类 。一个Key对应一个Value,string类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片(生成二进制)或者序列化的对象。string类型是Redis最基本的数据类型,一个键最大能存储512MB。
示例:
常用命令介绍:
Set key value 添加一条键值对的string类型数据
Get key 通过key的值,获取到对应的value值
List
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
示例:
常用命令介绍:
Lpush 命令将一个或多个值插入到列表头部。 如果 key 不存在,一个空列表会被创建并执行 LPUSH 操作。 当 key 存在但不是列表类型时,返回一个错误。
Lrange 返回列表中指定区间内的元素,区间以偏移量 START 和 END 指定。 其中 0 表示列表的第一个元素, 1 表示列表的第二个元素,以此类推。
Llen 命令用于返回列表的长度。 如果列表 key 不存在,则 key 被解释为一个空列表,返回 0 。 如果 key 不是列表类型,返回一个错误。
Lpop 命令用于移除并返回列表的第一个元素。
Set
Set是string类型的无序集合。
示例:
常用命令介绍:
sadd将一个或多个 member(成员) 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略。假如 key 不存在,则创建一个只包含 member 元素作成员的集合。当 key 不是集合类型时,返回一个错误。
scard获取集合的成员数
smembers返回集合中的所有成员
sismember检测一个元素是否存在于集合(set)中
ZSet
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。
示例:
常用命令介绍:
zadd 向有序集合添加一个或多个成员,或者更新已存在成员的分数
zcard获取有序集合的成员数
zrank返回有序集合中指定成员的索引
zrange通过索引区间返回有序集合中指定区间内的成员
Hash
是一个string 类型的field(领域或标签)和value的映射表。Hash特别适合存储对象,相对于将对象的每个字段存成单个string 类型。一个对象存储在Hash类型中会占用更少的内存,并且可以更方便的存取整个对象。如下图:
示例:
常用命令介绍:
hmset key field1 value1同时将多个 field-value (域-值)对设置到哈希表 key 中。
hgetall获取在哈希表中指定 key 的所有字段和值
hexists查看哈希表 key 中,指定的字段是否存在。
hget获取存储在哈希表中指定字段的值。
hdel删除一个或多个哈希表字段