Set(集合)
set中值是不能重复的,如果添加相同元素,会添加失败
set 中所有命令都是s开头的
sadd key value 给key集合添加value
smembers key 查看key集合中所有的value
sismember key value 查看key集合中是否含有value ,含有返回1,反之返回0
scard key 获取key集合中的元素个数
srem key value 移除key集合中的value元素
SRANDMEMBER key count 随机获得key集合中count个元素
spop key count 随机移除key集合中count个元素
smove key destination member 将key集合中的value元素移动到destination集合中
sdiff key1 key2 查看key1中有的 除去key2中有的 (差集)
sinter key1 key2 查看key1 和key2 的交集 ,key1和key2共同有的元素 (微博、b站的共同关注)
举例:微博,A用户将所有关注的人放在set集合中,将粉丝也放在一个set集合中
共同关注,共同爱好,二度好友,推荐好友!
sunion key1 key2 查看key1和key2的并集
###################################
127.0.0.1:6379> sadd set hello
(integer) 1
127.0.0.1:6379> sadd set hello1
(integer) 1
127.0.0.1:6379> sadd set hello2
(integer) 1
127.0.0.1:6379> sadd set hello3
(integer) 1
127.0.0.1:6379> SMEMBERS set
1) "hello2"
2) "hello"
3) "hello3"
4) "hello1"
127.0.0.1:6379> SISMEMBER set hello
(integer) 1
127.0.0.1:6379> SISMEMBER set world
(integer) 0
127.0.0.1:6379> scard set
(integer) 4
127.0.0.1:6379> sadd set hello
(integer) 0
127.0.0.1:6379> scard set
(integer) 4
127.0.0.1:6379> srem set hello
(integer) 1
127.0.0.1:6379> SMEMBERS set
1) "hello3"
2) "hello1"
3) "hello2"
#########################################
127.0.0.1:6379> SRANDMEMBER set 1
1) "hello1"
127.0.0.1:6379> SRANDMEMBER set 1
1) "hello2"
########################################
127.0.0.1:6379> spop set
"hello2"
127.0.0.1:6379> spop set
"hello1"
127.0.0.1:6379> smembers set
1) "hello3"
#######################################
127.0.0.1:6379> sadd set hello
(integer) 1
127.0.0.1:6379> sadd set hello1
(integer) 1
127.0.0.1:6379> sadd set hello2
(integer) 1
127.0.0.1:6379> sadd myset world
(integer) 1
127.0.0.1:6379> smove set myset hello
(integer) 1
127.0.0.1:6379> SMEMBERS myset
1) "hello"
2) "world"
########################################
127.0.0.1:6379> smembers key1
1) "b"
2) "d"
3) "c"
4) "a"
127.0.0.1:6379> smembers key2
1) "e"
2) "c"
127.0.0.1:6379> sdiff key1 key2
1) "b"
2) "d"
3) "a"
127.0.0.1:6379> SINTER key1 key2
1) "c"
127.0.0.1:6379> sdiff key2 key1
1) "e"
127.0.0.1:6379> SUNION key1 key2
1) "c"
2) "d"
3) "a"
4) "b"
5) "e"