个性化阅读
专注于IT技术分析

redis列表list类型和集合set类型使用详解

Redis上一章教程请查看:redis字符串和散列使用详解

在这一章我们讨论redis的列表list类型和集合set类型的使用。

一、redis列表list类型的使用

Redis列表是简单的字符串列表,按插入顺序排序你可以在列表的头部或尾部添加Redis列表中的元素,列表的最大长度是2^32 – 1个元素(超过40亿个元素)。

redis > lpush dbs redis 
(integer) 1 
redis > lpush dbs mongodb 
(integer) 2 
redis > lpush dbs mysql 
(integer) 3 
redis > lpush dbs 0 10  
1) "mysql" 
2) "mongodb" 
3) "redis"

上面的例子中命令lupsh在Redis列表dbs中插入了三个值。

Redis列表list完整命令

编号 命令 & 描述
1 BLPOP key1 [key2 ] timeout Delete并get头部元素,或阻塞直到其中一个元素可用为止
2 BRPOP key1 [key2 ] timeout delete并get尾部元素,或阻塞直到有一个元素可用
3 BRPOPLPUSH source destination timeout 推出一个值将其推送到另一个列表并返回,或阻塞直到有一个可用
4 LINDEX key index 从列表中按其索引获取元素
5 LINSERT key BEFORE|AFTER pivot value 在列表中的另一个元素之前或之后插入一个元素
6 LLEN key 获取列表的长度
7 LPOP key Delete并get头部元素
8 LPUSH key value1 [value2] 将一个或多个值添加到列表中
9 LPUSHX key value 仅当列表存在时才将值添加到列表中
10 LRANGE key start stop 从列表中获取元素的范围
11 LREM key count value 从列表中删除元素
12 LSET key index value 根据列表中的元素的索引设置其值
13 LTRIM key start stop 将列表修剪到指定范围
14 RPOP key 删除并获取列表中的最后一个元素
15 RPOPLPUSH source destination 删除列表中的最后一个元素,将它附加到另一个列表并返回它
16 RPUSH key value1 [value2] 向列表追加一个或多个值
17 RPUSHX key value 仅当列表存在时才向列表追加值

二、redis集合set类型的使用

Redis集合是唯一字符串的无序集合,唯一意味着集合不允许在键中重复数据。使用时间O(1)在Redis集合中添加、删除和测试中成员的存在性(常数时间,与集合中包含的元素数量无关),列表的最大长度是2^32 – 1个元素(超过40亿)。

redis > SADD dbs redis 
(integer) 1 
redis > SADD dbs mongodb 
(integer) 1 
redis > SADD dbs mysql 
(integer) 1 
redis > SADD dbs mysql 
(integer) 0 
redis > SMEMBERS dbs  
1) "mysql" 
2) "mongodb" 
3) "redis"

Redis集合set的所有命令

编号                                                                   命令 & 简述
1 SADD key member1 [member2] 将一个或多个成员添加到集合中
2 SCARD key 获取集合中的成员数
3 SDIFF key1 [key2] 减去多个集合
4 SDIFFSTORE destination key1 [key2] 减去多个集合并将结果集存储在一个键中
5 SINTER key1 [key2] 多个集合的相交集合
6 SINTERSTORE destination key1 [key2] 交叉多个集合并将结果集存储在一个键中
7 SISMEMBER key member 确定给定值是否为集合的成员
8 SMEMBERS key 获取集合中的所有成员
9 SMOVE source destination member 将一个成员从一个集合移动到另一个集合
10 SPOP key 从集合中移除并返回一个随机成员
11 SRANDMEMBER key [count] 从集合中获取一个或多个随机成员
12 SREM key member1 [member2] 从集合中移除一个或多个成员
13 SUNION key1 [key2] 添加多个集合
14 SUNIONSTORE destination key1 [key2] 添加多个集并将结果集存储在键中
15 SSCAN key cursor [MATCH pattern] [COUNT count] 增量地迭代集合元素
赞(0) 打赏
未经允许不得转载:srcmini » redis列表list类型和集合set类型使用详解
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏