GETSET
将某个键设置为新值后,返回该键之前的字符串值。
语法
GETSET key value
引入版本:1.0.0
复杂度摘要:O(1)
以原子方式将 key 设置为 value,并返回 key 中存储的旧值。当 key 存在但不包含字符串值时,返回错误。成功执行 SET 操作后,与该键关联的任何先前生存时间都将被丢弃。
必需参数
key
键名称。
value
要设置的新值。
示例
redis> SET mykey "Hello"
OK
redis> GETSET mykey "World"
"Hello"
redis> GET mykey
"World"
详细说明
设计模式
您可以将 GETSET 与 INCR 一起使用来对事件进行计数并自动重置计数器。例如,每次发生事件时,您可以在 mycounter 键上调用 INCR。当您需要读取计数器值并将其自动重置为零时,请调用 GETSET。这可以使用 GETSET mycounter "0" 来完成:
redis> INCR mycounter
(integer) 1
redis> GETSET mycounter "0"
"1"
redis> GET mycounter
"0"
Redis Software 与 Redis Cloud 兼容性
| Redis 软件 |
Redis Cloud |
说明 |
|---|---|---|
| ✅ 标准 |
✅ 标准 |
从 Redis v6.2.0 开始已弃用。 |
返回值
RESP2
以下之一: * 批量字符串回复:存储在键处的旧值。 * 无回复:如果键不存在。
RESP3
资料来源:Redis 官方 GETSET 文档;中文内容参考 Redis 文档许可。