redis-set常用命令

来源:互联网 发布:ubuntu 232 编辑:程序博客网 时间:2024/06/02 05:35

一.增删查

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:判断参数中指定的成员是否在该set1表示存在 0表示不存在或者该key本身就不存在(无论集合中有多少元素都可以极速的返回结果)

例子:判断set1集合中是否有a元素

这里写图片描述

你平常上网去爱奇艺,优酷,腾讯视屏看电视,会员用户可以免广告,而普通用户不能,在打开视频之前就是用这种操作来判断用户是不是会员

普通用户[小红,小明]会员集合[小李子,小刘,小张]

这种操作经常用来做集合相关判断

3.删除元素

srem key members[member1、member2]:删除set中指定的成员

例子:从set1集合中删除元素b和d

这里写图片描述

二.集合运算

我们先规定

key  valueset1  a b c dset2  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

这里写图片描述

原创粉丝点击