1.无序去重
set去重复
sadd添加元素;smembers查看元素
srem:移除元素
2.集合操作
sinter k2 k3 //k2 k3两个key取交集
sinterstore k k2 k3 // k2 k3取交集,结果存入k
sinterstore优点:k2 k3做交集是在服务端一步完成的 没有io
SUNION:取并集
SDIFF:取差集
3.随机事件
SRANDMEMBER
SRANDMEMBER key count //count为正数 取出一个去重的结果集(不能超过已有集合)
若为负数:取出一个带重复的结果集 一定满足数量
若为零:不返回
应用场景:
1.抽奖:SRANDMEMBER k1 2 //k1 中随机抽出两个,两个不重复
SRANDMEMBER k1 -2 //k1 中随机抽出两个,两个可重复
2.礼物多 抽奖人少
SRANDMEMBER k1 -20 //count用负数 且数字大一些
随机抽奖:一个只抽取一个,且不重复,直到抽取完
spop命令: