Redis 命令:集合


Redis 集合(Set)

Redis的集合(Set)是一种无序的字符串类型数据结构,具有以下特点:

  1. 集合中的成员都是唯一的,这意味着集合中不能出现重复的数据。
  2. 集合是通过哈希表实现的,所以它的添加、删除、查找操作的时间复杂度为O(1)。
  3. 集合中最大的成员数为2^32 - 1(约40亿个),每个集合可存储40多亿个成员。

实际操作时,可以通过SADD、 SISMEMBER、 SCARD、 SREM和SRANDMEMBER等命令对集合进行添加、删除、查看元素个数、随机取出元素等操作。另外集合对象的编码可以是intset或hashtable。使用Redis的Set数据结构可以有效地进行去重、分类、共同好友等功能的实现。

实例

以下是一些Redis集合(Set)命令的示例:

  1. SADD命令:向集合添加一个或多个成员。
SADD myset "Hello" "World"
  1. SISMEMBER命令:检查成员是否是集合的成员。
SISMEMBER myset "Hello"
  1. SCARD命令:获取集合的成员数量。
SCARD myset
  1. SREM命令:从集合中移除一个或多个成员。
SREM myset "Hello"
  1. SRANDMEMBER命令:随机返回集合中的一个成员。
SRANDMEMBER myset
  1. SPOP命令:随机移除并返回集合中的一个成员。
SPOP myset

Redis 集合命令

以下是 Redis 集合基本命令的表格:

命令描述
SADD key member1 [member2 …]向集合添加一个或多个成员。
SMEMBERS key返回集合中的所有成员。
SISMEMBER key member检查成员是否是集合的成员。
SCARD key获取集合的成员数量。
SREM key member1 [member2 …]从集合中移除一个或多个成员。
SRANDMEMBER key [count]随机返回集合中的一个或多个成员。
SPOP key [count]随机移除并返回集合中的一个或多个成员。
SMOVE source destination member将成员从一个集合移动到另一个集合。
SDIFF key1 [key2 …]返回第一个集合与其他集合的差集。
SDIFFSTORE destination key1 [key2 …]将差集存储在另一个集合中。
SINTER key1 [key2 …]返回多个集合的交集。
SINTERSTORE destination key1 [key2 …]将交集存储在另一个集合中。
SUNION key1 [key2 …]返回多个集合的并集。
SUNIONSTORE destination key1 [key2 …]将并集存储在另一个集合中。
SMEMBERS key返回集合中的所有成员。
SISMEMBER key member检查成员是否是集合的成员。
SCARD key获取集合的成员数量。
SREM key member1 [member2 …]从集合中移除一个或多个成员。
SRANDMEMBER key [count]随机返回集合中的一个或多个成员。
SPOP key [count]随机移除并返回集合中的一个或多个成员。
SMOVE source destination member将成员从一个集合移动到另一个集合。
SDIFF key1 [key2 …]返回第一个集合与其他集合的差集。
SDIFFSTORE destination key1 [key2 …]将差集存储在另一个集合中。
SINTER key1 [key2 …]返回多个集合的交集。
SINTERSTORE destination key1 [key2 …]将交集存储在另一个集合中。
SUNION key1 [key2 …]返回多个集合的并集。
SUNIONSTORE destination key1 [key2 …]将并集存储在另一个集合中。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

梁辰兴

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值