Redis set 数据类型由键值对组成,这些键值对具有无序、唯一的性质,这与 Python 的 set 相似。当集合中最后一个元素被移除之后,该数据结构也会被自动删除,内存也同样会被收回。
由于 set 集合可以实现去重,因此它有很多适用场景,比如用户抽奖活动,使用 set 集合可以保证同一用户不被第二次选中。
Redis set 常用的命令如下所示:
命令 | 说明 |
---|---|
SADD | 向集合中添加一个或者多个元素,并且自动去重 |
SCARD | 返回集合中元素的个数 |
SDIFF | 求两个或对多个集合的差集 |
SDIFFSTORE | 求两个集合或多个集合的差集,并将结果保存到指定的集合(key)中 |
SINTER | 求两个或多个集合的交集 |
SINTERSTORE | 求两个或多个集合的交集,并将结果保存到指定的集合(key)中 |
SMEMBERS | 查看集合中所有元素 |
SMOVE | 将集合中的元素移动到指定的集合中 |
SPOP | 弹出指定数量的元素 |
SRANDMEMBER | 随机从集合中返回指定数量的元素,默认返回 1个 |
SREM | 删除一个或者多个元素,若元素不存在则自动忽略 |
SUNION | 求两个或者多个集合的并集 |
SUNIONSTORE | 求两个或者多个集合的并集,并将结果保存到指定的集合(key)中 |