GETSET:获取旧值并设置新值
GETSET
命令就像 GET
命令和 SET
命令的组合版本,它首先获取字符串键目前已有的值,接着为键设置新值,最后把之前获取到的旧值返回给用户:
- GETSET key new_value
以下代码展示了如何使用 GETSET
命令去获取 number
键的旧值并为它设置新值:
- redis> GET number -- number 键现在的值为 "10086"
- "10086"
- redis> GETSET number "12345"
- "10086" -- 返回旧值
- redis> GET number -- number 键的值已被更新为 "12345"
- "12345"
另一方面,如果被设置的键并不存在于数据库,那么 GETSET
命令将返回空值作为键的旧值:
- redis> GET counter
- (nil) -- 键不存在
- redis> GETSET counter 50
- (nil) -- 返回空值作为旧值
- redis> GET counter
- "50"
其他信息
属性 | 值 |
---|---|
复杂度 | O(1) |
版本要求 | GETSET 命令从 Redis 1.0.0 开始可用。 |