2.4 集合Set
2.4.1 简介
Redis Set 对外提供和list类似列表的功能并可以自动排重。当我们需要一个不重复的数据列表时Set是个很好的选择。set提供判断某个成员数据是否在Set集合内的接口,这也是list所不具备的。Se是string类型的无序集合,底层是一个value为null的hash表,添加、删除、查找的时间复杂度为O(1)。Set数据结构是dict字典,字典是用hash表实现的。
2.4.2 基本命令
sadd 将一个或读个元素值添加到集合key中
smembers :获取该集合的所有元素
srandmember :随机获取集合中的1或多个元素
sismember :判断集合key中是否含有value值,是返回1 否返回0
scard :返回集合key中的元素个数
srem :删除集合key中的元素value
spop :随机取出(并删除)集合key的一个元素
sscan :读取集合key匹配match的count个元素,cursor为返回给客户端的游标
2.4.3 运算命令
sinter :返回两个集合的交集元素
sinterstore :返回两个集合的交集元素并存入dest集合中
sunion :返回两个集合的并集元素
sunionstore :返回两个集合的并集元素并存入dest集合中
sdiff :返回两个集合的差集元素(key1中的,不包含key2中的)
sdiffstore :返回两个集合的差集元素(key1中的,不包含key2中的)并存入dest集合中