SET集合
特点:集合中存储的元素是惟一的。
| 命令 | 举例 | 说明 |
| SADD | sadd [key] [value1 value2 value3] | key对应的集合中添加元素 |
| SMEMBERS | smembers [key] | 获取key对应的集合的所有元素 |
| SISMEMBER | sismember [key] [value] | 判断value是否在key对应的集合中存在 |
| SCARD | scard [key] | 获取key对应的集合长度 |
| SREM | srem [key][value] | 移除key对应集合中指定元素 |
| SRANDMEMBER | srandmember [key] [num] | 随机获取key对应集合中num个元素 |
| SPOP | spop [key] [num] | 随机删除key对应集合中num个元素 |
| SMOVE | smove [key] [newKey] [keyValue] | 将key中的元素keyValue移入到newKey对应的集合中 |
| SINTER | sinter [key] [key1] | 获取两个集合交集 |
| SUNION | sunion [key] [key1] | 获取两个集合并集 |
| SDIFF | sdiff [key] [key1] | 获取两个集合差集 |
SADD 【key】
语法:sadd [key] [value1 value2 value3]举例: sadd db redis orable mysql postgresql
说明:对key对应集合添加元素,返回添加成功元素的个数

SMEMBERS 【key】
语法:smembers [key]
说明:查看key对相应集合中的所有元素

SISMEMBER
语法:sismembers [key] [value]
说明:查看key对相应集合中是否有value这元素,有则返回1 ,没有则返回0

SCARD
语法:scard [key]
说明:获取key对应集合元素的个数

SREM
语法:srem [key] [value1 value2 value3]
说明:移除key对应集合中指定位置元素,返回移除的个数

SRANDMEMBER
语法: srandmember [key] 【num】
说明:从key对应的集合中随机抽取几个元素,如果num省略不写则返回结果不带元素下标

SMOVE
smove [key] [newKey] [keyvalue]
说明:将key中元素keyValue放入newKey集合中

SINTER
语法:sinter [key] [key1]
说明:获取key对应的集合和key1对应集合的交集,返回交集结果

SUNION
语法:sunion [key] [key1] [key2]
说明: 获取多个结合的并集

SDIFF
语法:sdiff [key] [key1]
说明:获取两个集合的差集

注:两个集合差集的计算结果可以通过先取两个集合的并集然后移除掉最后一个集合元素
如:sdiff [key] [key1] 则先取两个集合的并集然后移除掉key1集合中的元素即差集结果
如:sdiff [key1] [key] 则先取两个集合的并集然后移除掉key集合中的元素即差集结果
总结:
使用set集合可以实现:共同好用,通过关注等需求


















