Redis抵御Set是String类型的无序集合,集合成员是唯一的,无重复数据,唯一且数据无序。 redis中集合是通过哈希表实现的,set是通过hashtable实现的,集合中最大成员数为2^32-1(每个集合可存储40多亿个成员),类似于java中的HashTable集合。
赋值: 向集合添加 一个或多个成员
SADD key member1 [member2]取值: 1、获取集合的成员数
SCARD key2、返回集合中的所有成员
SMEMBERS key3、判断member元素是否是集合key的成员
SISMEMBER key member4、返回集合中一个或多个随机数
SRANDMEMBER key [count]删除: 1、移除集合中一个或多个成员
SREM key member1 [member2]2、移除并返回集合中的一个随机元素
SPOP key [count]3、将member元素从source集合移动到destination集合
SMOVE source destination member差集: 1、返回给定所有集合的差集(左侧)
SDIFF key1 [key2]2、返回给定所有集合的差集并存储在 destination 中
SDIFFSTORE destination key1 [key2]交集: 1、返回给定所有集合的交集(共有数据)
SINTER key1 [key2]2、返回给定所有集合的交集并存储在 destination 中
SINTERSTORE destination key1 [key2]并集: 1、返回所有给定集合的并集
SUNION key1 [key2]2、所有给定集合的并集存储在 destination 集合中
SUNIONSTORE destination key1 [key2]常应用于:对两个集合间的数据计算进行交集并集、差集运算 1、利用集合操作,可以取不同兴趣圈子的交集,以方便的实现如共同关注、共同喜好、共同好友等功能 2、利用唯一性,可以统计访问网站的所有独立ip,存取当天的活跃用户列表