← 返回首页
Redis数据类型之set
发表时间:2023-11-09 15:54:14
Redis数据类型之set

Redis数据类型之set

1.Redis的Set类型

set是一个集合,set集合中的元素都是不重复的,无序的。set集合类型的值最多可以存储2的32次方-1个元素。

set集合比较适合用在去重的场景下,因为它里面的元素是都不重复的。

set类型常用的命令如下所示:

案例:

向集合中添加元素 sadd, 获取所有元素。

127.0.0.1:6379> sadd set1 a b c a b c d
(integer) 4

127.0.0.1:6379> smembers set1
1) "b"
2) "c"
3) "d"
4) "a"

删除集合中的元素 srem

127.0.0.1:6379> srem set1 b
(integer) 1
127.0.0.1:6379> smembers set1
1) "c"
2) "d"
3) "a"

判断元素是否存在集合中 sismember

127.0.0.1:6379> sismember set1 d
(integer) 1
127.0.0.1:6379> sismember set1 z
(integer) 0

两个集合取差集 sdiff

127.0.0.1:6379> smembers set1
1) "c"
2) "d"
3) "a"

127.0.0.1:6379> sadd set2 a b c
(integer) 3
127.0.0.1:6379> smembers set2
1) "b"
2) "c"
3) "a"
127.0.0.1:6379> sdiff set1 set2
1) "d"

两个集合取交集 sinter

127.0.0.1:6379> sinter set1 set2
1) "c"
2) "a"

两个集合取并集 sunion

127.0.0.1:6379> sunion set1 set2
1) "c"
2) "a"
3) "d"
4) "b"

获取集合长度(获取集合中元素的个数) scard

127.0.0.1:6379> scard set2
(integer) 3