redis中的set类型的命令操作

本文介绍了Redis中集合数据类型的三种核心操作:SADD用于添加元素到集合,SREM用于从集合中移除元素,SPOP则用于随机弹出并返回集合中的一个元素。此外还涵盖了查询集合元素及集合间运算的相关命令。
[color=green][list]
[*]SADD、SREM与SPOP命令

[*]获取集合元素的相关命令

[*]集合间的运算命令

[/list]
SADD、SREM与SPOP命令


SADD(添加):

语法:SADD key(集合名) member

解释:用来向集合中添加一个或多个元素,返回值表示成功加入的元素数量。因为一个集合中不能有相同的元素,如果加入的元素已经存在与集合则忽略该元素的加入。


SREM(删除):

SREM key member

解释:从集合中删除一个或多个元素,返回值表示成功过删除的数量。


SPOP(弹出):

SPOP key

解释:随机弹出一个元素,返回值即是弹出的元素。


SMEMBERS(查询全部):

SMEMBERS key

解释:返回集合中的所有元素。


SRANDMEMBER(随机查):

语法:SRANDMEMBER key count(数字)

解释:用来随机从集合中获取一个或多个元素,但count>0,返回count(不大约set的长度)个不重复的元素;当count用来对多个集合执行并集运算。


SUNIONSTORE

语法:SUNIONSTORE dest key1 key2 key3 ..

解释:将多个集合执行并集运算并将结果存放在dest集合。

[color=green][/color][/color]
Redis 中的 `Set` 是一种无序且不重复的数据集合,适用于存储不需要重复元素的场景。每个 Set 由多个字符串元素组成,并支持高效的集合操作,如交集、并集和差集等。 ### 常用命令 #### 添加与删除元素 - `SADD key member [member ...]`:向指定 Key 的 Set 中添加一个或多个成员,如果成员已存在则忽略。 ```bash redis> SADD myset "one" (integer) 1 ``` - `SREM key member [member ...]`:从指定 Key 的 Set 中移除一个或多个成员,若成员不存在则忽略。 ```bash redis> SREM myset "one" (integer) 1 ``` #### 集合查询 - `SMEMBERS key`:返回指定 Key 的 Set 中所有成员。 ```bash redis> SMEMBERS myset 1) "two" 2) "three" ``` - `SISMEMBER key member`:判断指定成员是否存在于 Set 中,返回 1 表示存在,0 表示不存在。 ```bash redis> SISMEMBER myset "two" (integer) 1 ``` #### 集合运算 - `SDIFF key [key ...]`:返回多个 Set 的差集,即第一个集合中存在但其他集合中不存在的元素。 ```bash redis> SDIFF set1 set2 ``` - `SINTER key [key ...]`:返回多个 Set 的交集,即所有集合中共有的元素。 ```bash redis> SINTER set1 set2 ``` - `SUNION key [key ...]`:返回多个 Set 的并集,即所有集合中的所有元素。 ```bash redis> SUNION set1 set2 ``` #### 其他操作 - `SCARD key`:获取 Set 中的元素数量。 ```bash redis> SCARD myset (integer) 2 ``` - `SRANDMEMBER key [count]`:随机返回 Set 中的一个或多个成员,不删除成员。 ```bash redis> SRANDMEMBER myset "two" ``` - `SPOP key [count]`:随机移除并返回 Set 中的一个或多个成员。 ```bash redis> SPOP myset "three" ``` 这些命令使得 RedisSet 数据类型在实现去重、关系计算以及随机选取等功能时非常高效和便捷[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值