redis之(七)redis的集合类型的命令
[一]增加/删除元素
--->命令:SADD key member [member...]
--->向集合键中添加一个,或多个元素。如果键不存在,则创建。如果元素存在,则忽略不执行。返回值是成功加入的元素的个数
--->命令:SREM key member [member...]
--->删除集合键中的元素。如果元素存在则删除,如果元素不存在,则忽略不执行。返回值是成功删除的元素个数
[二]获得集合中的所有元素
--->命令:SMEMBERS key
--->返回指定集合键中的所有元素
[三]判断元素是否在集合中
--->命令:SISMEMBER key member
--->判断一个元素是否是在集合中是一个时间复杂度为0的操作。无论集合中有多少元素,该命令始终可以积极返回结果
--->当元素存在,返回1.当集合键或元素不存在的时候返回0
[四]集合间的差集
--->命令:SDIFF key [key ...]
---> 多个集合之间进行差集运算.运算顺序,从参数列表左侧到右侧。
--->差集。A-B=x(x属于A且x不属于B)
--->SDIFF key1 key2 key3 计算顺序。key1-key2求出差集,在拿key1-key2的差集结果-key3,得到的最终结果
[五]集合间交集运算
--->命令:SINTER key [key ...]
--->多个集合之间进行交集运算,运算顺序,从参数列表左侧到右侧
--->交集:A n B =x(x即属于集合A,也属于集合B)
[六]集合间的并集运算
--->命令:SUNION key [key ...]
--->过个集合之间进行并集运算,运算顺序,从参数列表左侧到右侧
--->并集:A+B=X(x是A集合+B集合去除重复元素的结果)
[七]获得集合中元素的个数
--->命令:SCARD key
--->获取集合中元素的个数
[八]进行集合运算,并将结果存储
--->命令:SDIFFSTORE destination key [key ...]
--->key...集合之间求差集,并将差集存储在destination的键中,并不回返回结果,返回差集中元素的个数
--->命令:SINTERSTORE destination key [key...]
--->key...集合之间求交集,并将交集存储在destination的键中,并不返回结果,返回交集中元素的个数
--->命令:SUNIONSTORE destination key[key...]
--->key...集合之间求并集,并将并集存储在destination的键中,并不返回结果,返回并集中元素的个数
[九]随机获得集合中的元素
--->命令:SRANDMEMBER key [count]
--->用来随机从集合中获取count个元素
--->命令:SRANDMEMBER key 如果不填count参数,则随机获取一个元素
--->当count为正数:从集合中获取count个不重复的元素,count>集合的元素,则返回集合中所有元素
--->当count为负数:从集合中获得|count|个元素,这些元素有可能相同
--->集合中的元素存储,和hashMap的底层存储原理相似。
[十]从集合中弹出一个元素
--->命令:SPOP key
--->随机从集合中选取一个元素,然后删除它,并将选中元素值返回。