一、Redis 集合(Set)
Set是string类型的无序集合。
集合成员是唯一的,集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。
set是通过hash table实现的,添加、删除和查找的复杂度都是0(1)。对集合可以取并集、交集、差集。
二、Redis 集合命令
命令 | 描述 |
---|---|
SADD key member1 [member2] | 向集合中添加一个或多个元素 |
SCARD key | 获取集合的成员数 |
SMEMBERS key | 返回集合中的所有成员 |
SISMEMBER key member | 判断 member 元素是否是集合 key 的成员 |
SREM key member1 [member2] | 移除集合中一个或多个成员,成功返回1,不成功返回0 |
SPOP key | 移除并返回集合中的一个随机元素 |
SDIFF key1 [key2] | 返回第一个集合(key1)与其他集合之间的差异 |
SDIFFSTORE destination key1 [key2] | 返回给定所有集合的差集并存储在 destination 中 |
SINTER key1 [key2] | 返回给定所有集合的交集 |
SINTERSTORE destination key1 [key2] | 返回给定所有集合的交集并存储在 destination 中 |
SUNION key1 [key2] | 返回所有给定集合的并集 |
SUNIONSTORE destination key1 [key2] | 所有给定集合的并集存储在 destination 集合中 |
SMOVE source destination member | 将 member 元素从 source 集合移动到 destination 集合 |
SRANDMEMBER key [count] | 随机返回key中的一个元素,但是不删除元素 |
SSCAN key cursor [MATCH pattern] [COUNT count] |