Redis的五种数据结构

一、字符串(String)
单个字符串的设置与获取。
常用命令:
1 设置指定 key 的值

SET key value 

2 获取指定 key 的值。

GET key 

3 获取所有(一个或多个)给定 key 的值。

MGET key1 [key2..]

4 将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。

SETEX key seconds value

5 只有在 key 不存在时设置 key 的值。

 SETNX key value

6 返回 key 所储存的字符串值的长度。

STRLEN key

7 同时设置一个或多个 key-value 对。

MSET key value [key value ...]

8 同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。

MSETNX key value [key value ...] 

9 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。

APPEND key value 

二、哈希(Hash)
redis hash是一个String类型的file和value的映射表,hash特别适合用于存储对象。
1 删除一个或多个哈希表字段

HDEL key field2 [field2] 

2 查看哈希表 key 中,指定的字段是否存在。

HEXISTS key field 

3 获取存储在哈希表中指定字段的值/td>

HGET key field 

4 获取在哈希表中指定 key 的所有字段和值

HGETALL key 

5 获取所有哈希表中的字段

HKEYS key 

6 获取哈希表中字段的数量

HLEN key 

7 获取所有给定字段的值

HMGET key field1 [field2] 

8 同时将多个 field-value (域-值)对设置到哈希表 key 中。

HMSET key field1 value1 [field2 value2 ] 

9 将哈希表 key 中的字段 field 的值设为 value 。

HSET key field value 

10 只有在字段 field 不存在时,设置哈希表字段的值。

HSETNX key field value 

11 获取哈希表中所有值

HVALS key 

三、列表(List)
Redis列表是简单的字符串列表,其实就是链表(双端链表),按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。List结构可以有序的存储多个字符串,并且是允许元素重复的。
1 通过索引获取列表中的元素

LINDEX key index 

2 在列表的元素前或者后插入元素

LINSERT key BEFORE|AFTER pivot value
LLEN key 获取列表长度

3 移出并获取列表的第一个元素

LPOP key 

4 将一个或多个值插入到列表头部

LPUSH key value1 [value2] 

5 将一个或多个值插入到已存在的列表头部

LPUSHX key value 

6 获取列表指定范围内的元素

LRANGE key start stop 

7 移除列表元素

LREM key count value 

8 通过索引设置列表元素的值

LSET key index value 

9 移除并获取列表最后一个元素

RPOP key 

10 移除列表的最后一个元素,并将该元素添加到另一个列表并返回

RPOPLPUSH source destination 

11 在列表中添加一个或多个值

RPUSH key value1 [value2] 

12 为已存在的列表添加值

RPUSHX key value 

四、集合(Set)
Redis的Set是string类型的无序集合。
集合通过使用散列表来保证自己存储的每个字符串都是各不相同的。
1 向集合添加一个或多个成员

SADD key member1 [member2] 

2 获取集合的成员数

SCARD key 

3 返回给定所有集合的差集

SDIFF key1 [key2]

4 返回给定所有集合的差集并存储在 destination 中

SDIFFSTORE destination key1 [key2]

5 返回给定所有集合的交集

SINTER key1 [key2] 

6 返回集合中的所有成员

SMEMBERS key 

7 移除并返回集合中的一个随机元素

SPOP key 

8 返回集合中一个或多个随机数

SRANDMEMBER key [count] 

9 移除集合中一个或多个成员

SREM key member1 [member2]

10 返回所有给定集合的并集

SUNION key1 [key2] 

五、有序集合(Sort Set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
有序集合的成员是唯一的,但分数(score)却可以重复。
1 向有序集合添加一个或多个成员,或者更新已存在成员的分数

 ZADD key score1 member1 [score2 member2] 

2 获取有序集合的成员数

ZCARD key 

3 移除有序集合中的一个或多个成员

ZREM key member [member ...]

3 计算ZUNIONSTORE destination numkeys key [key …] 计算给定的一个或多个有
序集的并集,并存储在新的 key 中在有序集合中指定区间分数的成员数

ZCOUNT key min max 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闲敲代码、落灯花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值