【整理】Redis学习-set指令清单(六)

简介

Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

指令

sadd key member [member ...]  

将一个或多个成员元素加入到集合中,已经存在于集合的成员元素将被忽略。
在这里插入图片描述

smembers key   

返回集合中的所有的成员

sscan key cursor [MATCH pattern] [COUNT count]     

用于迭代集合中键的元素
在这里插入图片描述
相关介绍:
SCAN 命令用于迭代当前数据库中的数据库键。
SSCAN 命令用于迭代集合键中的元素。
HSCAN 命令用于迭代哈希键中的键值对。
ZSCAN 命令用于迭代有序集合中的元素(包括元素成员和元素分值)。

SCAN 命令是一个基于游标的迭代器(cursor based iterator): SCAN 命令每次被调用之后, 都会向用户返回一个新的游标, 用户在下次迭代时需要使用这个新游标作为 SCAN 命令的游标参数, 以此来延续之前的迭代过程。

当 SCAN 命令的游标参数被设置为 0 时, 服务器将开始一次新的迭代, 而当服务器向用户返回值为 0 的游标时, 表示迭代已结束。

PS:sscan 后返回的1) 后面的值是0,表示遍历完成。

spop key [count] 

移除集合中的指定 key 的一个或多个随机元素,移除后会返回移除的元素。
在这里插入图片描述

scard key

返回集合中元素的数量
在这里插入图片描述

SRANDMEMBER key [count] 

用于返回集合中的一个随机元素。
在这里插入图片描述

负数时,返回一个集合,取值随机且可以重复:
在这里插入图片描述

srem key member [member ...]  

用于移除集合中的一个或多个成员元素,不存在的成员元素会被忽略。
在这里插入图片描述

SMOVE source destination member 

将指定成员 member 元素从 source 集合移动到 destination 集合
在这里插入图片描述

SINTER key [key ...] 

返回给定所有集合的交集

SINTERSTORE destination key [key ...] 

返回给定所有集合的交集并存储在 destination 中
在这里插入图片描述

SUNION key [key ...]

返回所有给定集合的并集

SUNIONSTORE destination key [key ...] 

所有给定集合的并集存储在 destination 集合中
在这里插入图片描述

SDIFF key [key ...]

返回给定集合之间的差集。不存在的集合 key 将视为空集。
存在顺序差异。
在这里插入图片描述

发布了42 篇原创文章 · 获赞 0 · 访问量 1437

猜你喜欢

转载自blog.csdn.net/tcctcszhanghao/article/details/103499522