Redis Set命令大全

本文详细介绍了Redis中的集合操作,包括`sadd`用于添加成员,`sinter`、`sinterstore`获取交集,`sdiff`、`sdiffstore`获取差集,`sunion`、`sunionstore`获取并集,`srem`删除成员,`spop`随机删除成员,`sismember`判断成员存在,`smove`移动成员,以及`scard`、`smembers`、`srandmember`和`sscan`进行集合的查询和迭代。这些操作对于数据存储和检索至关重要,尤其在需要处理不重复数据的场景下。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

添加

序号命令简介
1sadd key member [member …]添加成员

交并差集

序号命令简介
1sinter key [key …]获取交集
2sinterstore destination key [key …]获取交集并存入destination
3sintercard numkeys key [key …] [LIMIT limit]获取交集的元素数量
4sdiff key [key …]获取差集
5sdiffstore destination key [key …]获取差集并存入destination
6sunion key [key …]获取并集
7sunionstore destination key [key …]获取并集并存入destination

获取

序号命令简介
1scard key获取集合中有多少元素
2smembers key获取key中的所有member
3srandmember key [count]获取key中随机的count个(默认1)成员
4sscan key cursor [MATCH pattern] [COUNT count]迭代set

删除

序号命令简介
1srem key member [member …]从key中删除给定的member
2spop key [count]获取key中随机的count个(默认1)member并删除

判断

序号命令简介
1sismember key member判断member是否存在于key中
2smismember key member [member …]判断每个member是否存在于key中

移动

序号命令简介
1smove source destination member将source集合的member移动到destination
### Redis SET 命令用法及示例 #### 1. SET 命令简介 `SET` 是 Redis 中最基本的命令之一,用于将字符串值存储到指定的键中。如果键已经存在,则 `SET` 将覆盖旧值[^2]。此外,`SET` 命令支持设置键的过期时间以及其他选项。 --- #### 2. SET 命令语法 ```plaintext SET key value [EX seconds] [PX milliseconds] [NX|XX] ``` - **key**: 要设置的键名。 - **value**: 键对应的值。 - **EX seconds**: 设置键的生存时间为秒级。 - **PX milliseconds**: 设置键的生存时间为毫秒级。 - **NX**: 只有在键不存在时才设置。 - **XX**: 只有在键已存在时才设置。 --- #### 3. 示例代码 ##### (1)简单设置键值对 ```bash redis> SET name "Alice" OK redis> GET name "Alice" ``` ##### (2)带过期时间的设置(秒) ```bash redis> SET token "abc123" EX 10 OK redis> TTL token (integer) 9 ``` ##### (3)带过期时间的设置(毫秒) ```bash redis> SET session_id "xyz789" PX 5000 OK redis> PTTL session_id (integer) 4999 ``` ##### (4)只有在键不存在时设置 ```bash redis> SET unique_key "test_value" NX OK redis> SET unique_key "new_value" NX (nil) ``` ##### (5)只有在键已存在时设置 ```bash redis> SET existing_key "old_value" OK redis> SET existing_key "updated_value" XX OK ``` --- #### 4. 结合编程语言的示例 以下是一个使用 Python 和 `redis-py` 库调用 `SET` 命令的示例: ```python import redis from time import sleep # 创建 Redis 客户端实例 r = redis.StrictRedis(host='localhost', port=6379, decode_responses=True) # 设置键值对并添加过期时间 r.set('username', 'JohnDoe', ex=5) # 键将在 5 秒后过期 # 获取键值 print(r.get('username')) # 输出: JohnDoe # 等待超过过期时间后再获取 sleep(6) print(r.get('username')) # 输出: None ``` --- #### 5. 注意事项 - 当设置了过期时间后,Redis 会在后台自动删除超时的键[^1]。 - 如果需要批量设置多个键值对,可以考虑使用事务或管道技术以提高效率[^2]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值