Redis支持五种数据类型:string
(字符串),hash
(哈希),list
(列表),set
(集合)及zset
(sorted set:有序集合)。
字符串是Redis中最基本的数据类型,也是最简单的存储方式。Redis中的字符串是二进制安全的,这意味着它们可以包含任何数据,包括图像、音频、视频等。
# 语法
SET key value
# 示例 将键"username"的值设置为"john"
SET username john
# 语法
GET key
# 示例 获取键"username"的值
GET username
如图所示:
tips:
在Redis中,存储的键(key)名是自定义的。你可以根据自己的需求命名键,但是需要注意以下几点:
_
、-
、:
、.
、@
、+
、/
、$
、=
、#
、~
、^
、{
、}
。:
、.
、+
、/
这些字符开头。Redis的列表是一个有序的字符串集,可以添加一个元素到头部或尾部,或者获取指定位置的元素。
添加元素:
LPUSH key value1 [value2 ...]
RPUSH key value1 [value2 ...]
例如,将元素"john"和"jane"添加到键"users"的列表头部和尾部:
LPUSH users john
RPUSH users jane
获取元素:
LRANGE key start stop [WITHSCORES]
例如,获取键"users"的列表中的前两个元素:
LRANGE users 0 1 WITHSCORES
Redis的集合是一个无序的字符串集合,它只存储独特的字符串。集合支持添加、删除、测试成员等操作。
添加元素:
SADD key member1 [member2 ...]
例如,将元素"john"和"jane"添加到键"users"的集合中:
SADD users john jane
获取元素:
SMEMBERS key
例如,获取键"users"的集合中的所有元素:
SMEMBERS users
Redis的有序集合是一个带有分数的字符串集合,它可以将元素存储为唯一的字符串,并根据一个浮点数分数来为集合中的元素排序。
添加元素:
ZADD key score member1 [score member2 ...]
例如,将元素"john"的分数设置为100,将元素"jane"的分数设置为90,添加到键"users"的有序集合中:
ZADD users 100 john 90 jane
Redis的哈希表是一个键值对的集合.哈希可以存储关于某个对象的信息,并以一种可扩展和高效的方式来存储和检索这些信息。
哈希结构如下所示:
# 个人理解,hash表一个键值对,只不过value的内容是变长键值对
key : value={{key:value},{key:value}....}
添加字段和值:
HSET key field value
例如,在键"user"下添加字段"age"并将其值设置为30:
HSET user age 30
获取字段值:
HGET key field
例如,获取键"user"下字段"age"的值:
HGET user age