006:Redis-Set集合类型操作使用

2021-11-22 15:08:18 浏览数 (2)

Set集合类型:

所谓的集合好比一个乾坤袋,什么东西都可以放进去,但是每个集合中的各个元素不能重复。

  • redis的set是string类型的无序集合
  • set元素最大可以包含(2的32次方-1)个元素
  • 关于set集合类型除了基本的添加删除操作,其他有用的操作还包含集合的取并集(union),交集(intersection),差集(difference)。

通过这些操作可以很容易的实现好友推荐功能: 下图所示:

我们用集合把两个人的朋友圈表示出来:

Set集合类型操作:

首先我们还是先看一下set类型的操作:

sadd key member: 设置名为tomFri的key,其类型为set,内部有5个元素

设置名为linkenFri的key,其类型为set,内部有5个元素:

已经设置好两个集合了。

sinter key1 key2 … keyN: 查看key的交集

sunion key1 key2 … keyN: 查看key的并集

sdiff key1 key2 … keyN: 取集合的差集,并不是两个集合中不同的。 而是取在前面集合中后面集合没有的元素 如下图: 只有tom没有link的

只有link没有tom的

取差集的时候,两个集合的顺序是有区别的!

smembers key: 返回对应集合中的所有元素,结果是无序的。

sismember key member: 判断这个元素是不是集合中的元素 存在则返回1,否则返回0.

scard key: 返回集合的元素个数。

smove p1 p2 member: 把集合1的元素移动到集合2中、

srem key member: 从集合中删除指定的元素出去

这就是set集合类型的基本操作使用。

0 人点赞