redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构:
(1) 字符串类型 string:
这是最简单的数据类型,一个键对应一个值。
支持的操作包括设置值、获取值、增加或减少数值等。
示例命令:
1. 存储: set key value
2. 获取: get key
3. 删除: del key
(2) 哈希类型 hash : map格式
列表是简单的字符串列表,按照插入顺序排序。你可以从头部或尾部添加元素。
支持的操作包括从列表两端插入或删除元素,获取列表长度等。
示例命令:
-
存储: hset key field value
-
获取:
-
hget key field: 获取指定的field对应的值。
-
hgetall key:获取所有的field和value 。
-
-
删除: hdel key field
(3) 列表类型 list :可以添加一个元素到列表的头部(左边)或者尾部(右边)。 linkedlist格式。支持重复元素
哈希表是一个键值对集合。字段总是字符串,值可以是字符串,也可以是对其他数据结构的引用。
支持的操作包括设置字段值、获取字段值、删除字段等。
示例命令:
1. 添加:
1. lpush key value: 将元素加入列表左表
2. rpush key value:将元素加入列表右边
2. 获取:
lrange key start end :范围获取
3. 删除:
lpop key: 删除列表最左边的元素,并将元素返回
rpop key: 删除列表最右边的元素,并将元素返回
(4) 集合类型 set : 不允许重复元素
集合是无序的字符串集合,不允许重复。
支持的操作包括添加成员、删除成员、求集合的交集、并集和差集等。
示例命令:
1. 存储:sadd key value
2. 获取:smembers key:获取set集合中所有元素
3. 删除:srem key value:删除set集合中的某个元素
(5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序
有序集合是集合的一个升级版,每个成员都有一个分数(score),成员按照分数从小到大排序。
支持的操作包括添加带有分数的成员、根据分数范围获取成员等。
示例命令:
1. 存储:zadd key score value
2. 获取:zrange key start end [withscores]
3. 删除:zrem key value