上QQ阅读APP看书,第一时间看更新
2.3 GETSET:获取旧值并设置新值
GETSET命令就像GET命令和SET命令的组合版本,GETSET首先获取字符串键目前已有的值,接着为键设置新值,最后把之前获取到的旧值返回给用户:
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开始可用。