set中的值是不能重复的(无序)
##############插入值#####################################
sadd [key] [members...] 添加数据
smembers [key] 查看set所有数据
127.0.0.1:6379> sadd set one tow three four five
(integer) 5
127.0.0.1:6379> smembers set
1) "four"
2) "three"
3) "tow"
4) "one"
5) "five"
##############判断值是否存在set################################
sismember [key] [member] 存在返回1,不存在返回0
scard [key] 获取集合的内容数据个数
127.0.0.1:6379> sismember set one
(integer) 1
127.0.0.1:6379> sismember set one1
(integer) 0
127.0.0.1:6379> scard set
(integer) 5
############删除#####################################
srem [key] [member...] 删除指定值
spop [key] [count] 随机删除一些元素
127.0.0.1:6379> srem set one tow
(integer) 2
127.0.0.1:6379> smembers set
1) "four"
2) "three"
3) "five"
127.0.0.1:6379> spop set 1
1) "five"
127.0.0.1:6379> spop set
"four"
############随机获取值#####################################
#可用于抽奖
srandmember [key] [count]
127.0.0.1:6379> srandmember set
"three"
127.0.0.1:6379> srandmember set
"three"
127.0.0.1:6379> srandmember set
"five"
127.0.0.1:6379> srandmember set 2
1) "four"
2) "three"
###########smove移动元素####################################
smove [源集合] [新集合] [member]
127.0.0.1:6379> smembers oldSet
1) "four"
2) "three"
3) "tow"
4) "one"
5) "five"
127.0.0.1:6379> smove oldSet newSet one
(integer) 1
127.0.0.1:6379> smembers oldSet
1) "three"
2) "tow"
3) "four"
4) "five"
127.0.0.1:6379> smembers newSet
1) "one"
##########数学集合#####################################
sdiff [集合1] [集合2]... 差集(属于集合1,不属于集合2)
sinter [集合1] [集合2]... 交集(属于集合1,也属于集合2)
sunion [集合1] [集合2]... 并集(集合1和集合2合起来的)
127.0.0.1:6379> smembers key1
1) "d"
2) "c"
3) "b"
4) "a"
127.0.0.1:6379> smembers key2
1) "f"
2) "e"
3) "d"
4) "a"
5) "c"
127.0.0.1:6379> sdiff key1 key2
1) "b"
127.0.0.1:6379> sinter key1 key2
1) "d"
2) "c"
3) "a"
127.0.0.1:6379> sunion key1 key2
1) "f"
2) "e"
3) "d"
4) "a"
5) "c"
6) "b"
应用场景:微博,A用户将所有关注的人放在一个set集合中!将他的粉丝也放在一个集合中!
共同关注,共同爱好,二度好友,推荐好友!(六度分割理论)