一.增删查
1.添加元素
sadd key values[value1、value2…]:向set中添加数据,如果该key的值已有则不会重复添加
例子:向set1集合添加a b c d四个元素
sadd set1 a b c d
因为set是不重复的集合,所以你也可以这样写,虽然这样写很xx,不过对于理解set集合有作用
sadd set1 a b c d a
2.查询元素
(1).获得集合中的元素
smembers key:获取set中所有的成员
例子:从set1中集合查询所有元素
(2).判断元素在集合中存在
sismember key member:判断参数中指定的成员是否在该set中
1表示存在 0表示不存在或者该key本身就不存在(无论集合中有多少元素都可以极速的返回结果)
例子:判断set1集合中是否有a元素
你平常上网去爱奇艺,优酷,腾讯视屏看电视,会员用户可以免广告,而普通用户不能,在打开视频之前就是用这种操作来判断用户是不是会员
普通用户[小红,小明]
会员集合[小李子,小刘,小张]
这种操作经常用来做集合相关判断
3.删除元素
srem key members[member1、member2]:删除set中指定的成员
例子:从set1集合中删除元素b和d
二.集合运算
我们先规定
key value
set1 a b c d
set2 b e
1.差集运算(和集合顺序有关)
sdiff key1 key2…:返回key1与key2中相差的成员,而且与key的顺序有关。即返回差集
因为与集合顺序有关,所以set1,set2位置更换结果就会发生变化
例:哪些元素是属于set1但不属于set2
例:哪些元素是属于set2但不属于set1
2.交集运算(和集合顺序无关)
sinter key1 key2 key3…:返回交集
例:哪些元素属于set1又属于set2
3.并集运算(和集合顺序无关)
sunion key1 key2 key3…:返回并集
例:哪些元素属于set1或者属于set2