4、Redis-Set【常用】

发布于:2024-03-02 ⋅ 阅读:(60) ⋅ 点赞:(0)

目录

一、Redis-Set特点

二、常用命令与交并差

三、Redis中Set类型应用场景


一、Redis-Set特点

1、无序:添加的是A,B,C;取出的可能是B,A,C

2、唯一:不允许元素重复


二、常用命令与交并差

常用命令
格式 含义 例子
sadd key members[...] 往key集合中添加一系列元素members sadd mySet a b c d
smembers key 遍历key集合中的所有元素 smembers mySet
srem key members[...] 删除key集合中的一系列元素members srem mySet a c
spop key count 从key集合中随机弹出count个元素 spop mySet 1
127.0.0.1:6379> sadd mySet a b c d
(integer) 4
127.0.0.1:6379> smembers mySet // 无序:输出的顺序并不一定是输入的顺序
1) "d"
2) "b"
3) "a"
4) "c"
127.0.0.1:6379> srem mySet a c
(integer) 2
127.0.0.1:6379> smembers mySet
1) "d"
2) "b"
127.0.0.1:6379> spop mySet 1
1) "b"
127.0.0.1:6379> smembers mySet
1) "d"
127.0.0.1:6379> sadd mySet d
(integer) 0 // 不能添加相同的元素
127.0.0.1:6379> smembers mySet
1) "d"
交并差
格式 含义 例子
sdiff key1 key2 返回key1中特有的元素【差集 sdiff set1 set2
sinter key1 key2 返回key1和key2共有的元素【交集 sinter set1 set2
sunion key1 key2 返回key1中的所有元素和key2中的所以元素(不重复)【并集 sunion set1 set2
127.0.0.1:6379> sadd set1 a b c d
(integer) 4
127.0.0.1:6379> sadd set2 c d e f
(integer) 4
127.0.0.1:6379> sdiff set1 set2
1) "a"
2) "b"
127.0.0.1:6379> sinter set1 set2
1) "d"
2) "c"
127.0.0.1:6379> sunion set1 set2
1) "d"
2) "c"
3) "f"
4) "e"
5) "b"
6) "a"

三、Redis中Set类型应用场景

1、去重

2、抽奖 spop

3、共同好友 sinter


网站公告

今日签到

点亮在社区的每一天
去签到