Redis 支持五种数据类型:string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)
(1) String :字符串类型是 redis 最基本的数据类型,一个键最大能存储512M大小的字符串
redis 127.0.0.1:6379> SET name "Tom" # name是字符串名,Tom是字符串值 OK redis 127.0.0.1:6379> GET name "Tom"
(2) Hash :哈希表是一个键值对集合,一个哈希最多可以存储40多亿个键值对
127.0.0.1:6379> HMSET user1 id 1 name "Tom" age 18 # user1是哈希表名,后面是多个键值对 OK 127.0.0.1:6379> HMSET user2 id 2 name "John" age 20 OK
(3) List :列表是由多个列表元素组成的,一个列表最多可存储40多亿个元素
127.0.0.1:6379> LPUSH color "red" # LPUSH用于添加列表元素,color是列表名,red是列表元素 (integer) 1 127.0.0.1:6379> LPUSH color "green" (integer) 2 127.0.0.1:6379> LPUSH color "blue" (integer) 3 127.0.0.1:6379> LRANGE color 0 10 1) "blue" 2) "green" 3) "red"
(4) Set :集合是由多个成员组成的,这里的集合表示无序集合,一个集合可以存储40多亿个成员
127.0.0.1:6379> SADD name "Tom" # SADD用于添加集合成员,name是集合名,Tom是集合成员 (integer) 1 127.0.0.1:6379> SADD name "John" (integer) 1 127.0.0.1:6379> SADD name "Jack" (integer) 1 127.0.0.1:6379> SMEMBERS name # 可以看到集合中的成员是无序排列的 1) "Jack" 2) "John" 3) "Tom"
(5) Zset :有序集合是由多个成员组成的,且不允许有重复的成员,每个成员会关联一个分数(score),通过分数来为集合中的成员进行从小到大的排序
注意:Zset 中的成员是唯一的,不能有重复,但分数可以重复
127.0.0.1:6379> ZADD color 1 "red" # ZADD用于添加集合成员,color是集合名,1是分数,red是成员 (integer) 1 127.0.0.1:6379> ZADD color 2 "green" (integer) 1 127.0.0.1:6379> ZADD color 3 "blue" (integer) 1 127.0.0.1:6379> ZRANGEBYSCORE color 0 100 # 通过分数来查看集合中的成员,会从小到大排序 1) "red" 2) "green" 3) "blue"