专栏目录请点击
简介
- 集合类似列表,但是可以自动排重
- 集合提供了判断成员是否在集合中,但是列表没有
- redis的set是string类型的无序集合,他的地城其实是一个value为null的哈希表,所以添加、删除、查找的复杂度都是
O(1)
常用操作
增
SADD KEY_NAME VALUE1..VALUEN
:向集合中添加一个或者多个元素
删
SPOP key [count]
:随机删除count
个元素并返回
SREM key member1 [member2]
:移除集合中一个或者多个成员
改
SMOVE source destination member
:将 member 元素从 source 集合移动到 destination 集合
查
SCARD key
:获取成员数
SMEMBERS key
:查询集合中的成员SISMEMBER key member
:判断 member 元素是否是集合 key 的成员
交集
SINTER key1 [key2]
并集
SUNION key1 [key2]
:返回两个结合的并集SUNIONSTORE destination key1 [key2]
:将并集存储在destination
中
差集
SDIFF key1 [key2]
:返回集合的差集SDIFFSTORE destination key1 [key2]
:将集合的差集存到destination
中
数据结构
set的数据结构是一个字典,字典使用哈希表实现的