带你玩转Redis 的 Set 数据类型

🎨 个人介绍

👉大家好,我是:知识的搬运工旺仔

👉认真分享技术,记录学习过程的点滴,如果我的分享能为你带来帮助,请支持我奥🍻

👉你的支持,是我每天更新的动力。

👉赞点:👍 留言:✍ 收藏:⭐

👉个人格言:想法一步一步的落实,才是你我前进最佳选择。

1. Set 数据类型简介

  1. 集合set 是 String 类型的无序集合
  2. set集合无序,并且不重复
  3. 集合底层是由哈希表来实现的,时间复杂度为O(1)

2. 向集合中添加元素

SADD key member [member…]

:::success SADD 命令:添加多个元素到集合中

  1. key 中已经存在 number 元素,这个命令将被忽略
  2. key不存在,创建一个集合,然后在集合中添加number
  3. key 不是集合类型,返回一个错误 :::

SMOVE source destination member

:::success SMOVE 命令:移动集合元素到另一个集合中

  1. 将集合source 中 的member 元素移动到集合deatination 中
  2. SMOVE 命令是原子操作
  3. source 和 member 其中一个不存在,将不会在执行移动命令,返回0
  4. destination 中包含 member 元素,它就只会简单的删除source 中的member
  5. 成功移动完成,返回1 :::

SUNIONSTORE destination key [key…]

:::success SUNIONSTORE 命令:保存多个集合元素到新集合中

  1. 获取一个或多个集合数据,保存到destination 中
  2. 集合中的元素,是所有 key 中的交集 :::

3. 获取集合元素

SISMENBER key number

:::success SISMEMBER 命令:判断某个元素是否在集合中

  1. key 存在 number 元素,返回 1
  2. key 中不存在 number 或者 key 不存在 返回 0 :::

SCARD key

:::success SCARD 命令:获取集合中元素的数量

  1. 获取key 中number 的数量 :::

SMEMBERS key

:::success SMEMBERS 命令:获取集合中的所有元素

  1. key 存在,返回key 中所有元素
  2. key 不存在,返回空集合 :::

SRANDMEMBER key [count]

:::success SRANDMEMBER 命令:随机获取集合中的一个元素

  1. count为正数,count小于集合元素个数,返回一个包含count数量的数组,数组中的元素不重复
  2. count为正数,count大于集合元素个数,返回整个集合,数组中的元素不重复
  3. count为负数,返回一个相对应count绝对值数量的数组,数组中的元素可能重复 :::

SUNION key [key…]

:::success SUNION 命令:获取多个集合中的所有元素

  1. 返回所有集合key 的并集
  2. key 不存在,视为空集合 :::

4. 集合运算

  1. SDIFF key [key…]

:::success SDIFF 命令:获取多个集合元素的差集

  1. 获取给定集合之间的差集
  2. key 不存在,视为空集合 :::

SDIFFSTORE destination key [key…]

:::success SDIFFSTORE 命令:获取多个集合差集的元素个数

  1. 获取多个集合的差集,并将差集保存到destination中
  2. 如果destination存在,会被新的集合覆盖
  3. 如果destination部存在,会创建新的集合 :::

SINTRE key [key…]

:::success SINTER 命令:获取多个集合元素的交集

  1. 获取给定集合中的交集
  2. key 不存在,视为空集合
  3. 如果有空集合,那么交集就会变成空集合 :::

SINTERSTORE destination key [key…]

:::success SINTERSTORE 命令:获取多个集合交集的元素个数

  1. 获取给定集合中的交集,并将交集存储在destination 中
  2. 如果destination存在,会被新的集合覆盖
  3. 如果destination部存在,会创建新的集合 :::

5. 删除集合元素

SPOP key [count]

:::success SPOP 命令:删除集合中的元素

  1. 随机删除集合中的count 个元素
  2. key 不存在,或者key 是空集合,返回nil :::

SREM key member [member…]

:::success SREM 命令:删除集合中的多个元素

  1. 删除集合 key 中的一个或多个 member 元素
  2. 该命令在执行过程中 会忽略不存在的member 元素
  3. key 不是集合类型,则会返回一个错误 :::

🎈看完了不妨给我点个赞吧,👉你的支持,是我每天更新的动力…

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知识的搬运工旺仔

希望能帮助到大家学习

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值