一、集合和列表的区别
二、命令
1、SADD key number [number .....]---向集合中新增一个或是多个元素
备注:因为集合中元素是唯一性的,所以向集合中添加已有的元素会被忽略,返回值是新增成功的元素个数
请看第二条命令返回的结果,因为在第一条命令中是的letters集合含有了a元素,所以第二条命令试图将a元素加入到集合中,但是集合的唯一性限制所以这个元素将被忽略,最终只加入了b、c、2个元素
2、SREM key number [number .....]--移除集合的一个或是多个元素,返回成功删除元素的个数
删除2个元素为什么返回值是1呢?因为集合中没有d元素,所以删除不成功,该命令返回的是成功删除元素的个数
3、 SMEMBERS key --获得集合中所有的元素
4、SISMEMBER key number --判断元素是否在集合中,存在返回1,不存在返回0
5、SDIFF key [key ....]--求集合之间的差集
解析:上图命令表示的是获取在setA但是不在setB中的元素,同时也支持对多个集合求差集,从左往右逐步的求差集,原理跟2 个集合求差集是一样的
6、SINTER key [key .....],求多个集合求交集。
7、SUNION key [key ...]求多个集合的并集
8、SCARD key 获取集合中元素个数
9、进行集合运算并将结果存储
SDIFFSTORE destination key [key .....]
SINTERSTORE destination key [key .....]
SUNIONSTORE destination key [key .....]
10、随机获取集合中的元素
SRANDMEMBER key [count]
11、从集合中随机取一个元素弹出