Set
TIP
Redis set对外提供的功能与list类似,是一个列表的功能,特殊之处在于set是可以自动排重的,当你需要存储一个列表数据,又不希望出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内命令,这个也是list所不能提供的。
Redis的Set是string类型的无序集合。它底层其实是一个value为null的hash表
常用命令
sadd
sadd <key> <member> [member...]
member也就是值,可以写多个。
smembers
smembers <key>
获取一个 key 下所有的元素

srem
srem <key> <member> [member...]
移除指定的元素

scard
scard <key>
返回集合中数据的数量
srandmember
srandmember <key>
随机返回一个元素,并不影响源集合
spop
spop <key>
随机返回一个元素,并移出集合

smove
smove <source> <destination> <member>
把 source 集合中的 member 移到 destination 集合中去

sdiff
sdiff <key> [key...]
返回两个集合的差集
sinter
sinter <key> [key...]
返回两个集合的交集

sunion
sunion <key> [key...]
求并集

sdiffstore
sdiffstore <destination> <key> [key...]
返回两个集合的差集,保存在 destination 集合中

sinterstore
sinterstore <destination> <key> [key...]
返回两个集合的交集,保存在 destination 集合中。

sunionstore
sunionstore <destination> <key> [key...]
返回两个集合的并集,保存在 destination 集合中。
