让我来为你详细讲解一下Redis Set集合的实例详解,包含两个示例。
什么是 Redis Set 集合
Redis Set集合是一个无序,不重复的集合。它的实现类似于HashMap和HashSet,实际上是HashMap的一个键的集合。
Redis Set 集合的常用命令
Redis Set集合常用的命令包括:
- sadd key member [member ...]: 给指定的key添加一个或多个元素,返回添加到集合的元素的个数。
- srem key member [member ...]: 删除指定key集合中一个或多个元素,返回被移除元素的个数。
- smembers key: 返回指定key集合中的所有元素。
- sinter key [key ...]: 返回多个集合的交集。
- sunion key [key ...]: 返回多个集合的并集。
- sdiff key [key ...]: 返回一个集合与其它集合的差异。
Redis Set集合的实例详解
示例1:给Set集合添加元素并返回元素的个数
# 连接Redis
redis-cli
# 添加Set集合元素并返回元素的个数
sadd fruits apple orange banana
执行结果如下:
(integer) 3
说明成功将三个元素添加到fruits集合中。
示例2:演示Set集合的交集、并集和差集
# 连接Redis
redis-cli
# 添加两个Set集合
sadd fruits1 apple orange banana
sadd fruits2 orange pear mango
# 计算fruits1和fruits2的交集
sinter fruits1 fruits2
# 计算fruits1和fruits2的并集
sunion fruits1 fruits2
# 计算fruits1和fruits2的差集
sdiff fruits1 fruits2
执行结果如下:
1) "orange"
2) (empty list or set)
1) "apple"
2) "orange"
3) "banana"
4) "pear"
5) "mango"
1) "apple"
2) "banana"
说明fruits1和fruits2的交集是orange,这两个集合的并集是apple, orange, banana, pear, mango,fruits1和fruits2的差集是apple和banana。