Redis 集合(Set)
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以其添加、查找、删除的时间复杂度都是 O(1)。Redis 集合命令命令说明返回值示例SADD key member1 [member2 ...]将一个或多个成员元素加入到集合中,已存在与集合中的元素将被省略返回添加元素之后集合中的元素数量,不包括
·
Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以其添加、查找、删除的时间复杂度都是 O(1)。
命令 | 说明 | 返回值 | 示例 |
---|---|---|---|
SADD key member1 [member2 ...] | 将一个或多个成员元素加入到集合中,已存在与集合中的元素将被省略 | 返回添加元素之后集合中的元素数量,不包括被忽略的元素 | |
SCARD key | 获取集合中的元素个数 | 返回集合的元素数量,如果 key 不存在,返回 0 | |
SMEMBERS key | 获取集合中的所有元素 | 返回集合中的所有元素 | |
SRANDMEMBER key [count] | 获取集合中的一个或多个随机元素 | 如果 count 为正数,且小于集合中元素数量,则返回一个包含 count 个元素的数组,且元素唯一,如果 count 大于等于集合中元素数量,那么返回整个集合; 如果 count 为负数,那么返回一个长度为 count 的绝对值的数组,且数组中元素可能不唯一; 如果不设置 count,则 count 默认为 1,如果集合为空,返回 nil | |
SISMEMBER key member | 判断元素 member 是否是集合 key 的成员 | 如果 member 是 key 的元素,则返回 1,如果 member 不是 key 的元素,或 key 不存在,返回 0 | |
SPOP key | 移除并返回集合中的一个随机元素 | 返回被移除的随机元素,当集合不存在或者集合无元素时,返回 nil | |
SREM key member1 [member2] | 移除集合中一个或多个元素 | 返回被成功移除的元素数量,不包括被忽略的元素 | |
SUNION key1 [key2] | 返回给定集合中的并集元素 | 返回所有并集元素 | |
SUNIONSTORE destination key1 [key2] | 将指定元素的并集存储在 destination 集合中 | 返回 destination 集合中的元素数量 | |
SINTER key1 [key2] | 返回给定集合中的交集元素 | 返回所有交集元素 | |
SINTERSTORE destination key1 [key2] | 将指定元素的交集存储在 destination 集合中 | 返回 destination 集合中的元素数量 | |
SDIFF key1 [key2] | 返回第一个集合与其他集合之间的差异 | 返回所有差集元素 | |
SDIFFSTORE destination key1 [key2] | 将指定元素的差集存储在 destination 集合中 | 返回 destination 集合中的元素数量 | |
SMOVE source destination member | 将 source 中的元素 member 移动到 destination 集合中 | 如果 source 集合不存在或不包含指定的 member 元素,则 SMOVE 命令不执行任何操作,仅返回 0 。否则, member 元素从 source 集合中被移除,并添加到 destination 集合中去; 当 destination 集合已经包含 member 元素时, SMOVE 命令只是简单地将 source 集合中的 member 元素删除; 当 source 或 destination 不是集合类型时,返回一个错误 | |
SSCAN key cursor [MATCH pattern]_[COUNT count] | 迭代集合 key 中的元素 | 返回集合元素列表 | |
以上即是 Redis Set 的相关命令,SSCAN 命令继承自 SCAN 命令,后续会出一期详细的 SCAN命令~
更多推荐
已为社区贡献6条内容
所有评论(0)