Redis GETSET命令

Redis GETSET命令教程

Redis GETSET 命令用于将 Redis 中给定 KEY 的值设为 value ,并返回 KEY 的旧值。当 KEY 存在但不是 字符串类型 时,返回一个错误。

Redis GETSET命令语法

192.168.98.70:6379> GETSET KEY value

参数

参数 作用
KEY 要设置的 KEY
value 要设置的值

返回值

返回给定 KEY 的旧值。当 KEY 没有旧值时,即 KEY 不存在时,返回 nil 。

时间复杂度

O(1)

可用版本

>= 1.0.0

案例

存在旧值

存在旧值,返回旧值

192.168.98.70:6379> SET haicoder.net "Welcome to HaiCoder!" OK 192.168.98.70:6379> GETSET haicoder.net haicoder "Welcome to HaiCoder!" 192.168.98.70:6379> GET haicoder.net "haicoder" 192.168.98.70:6379> DEL haicoder.net (integer) 1

首先,使用 SET 命令,设置 haicoder.net 的值为 Welcome to HaiCoder!。接着,使用 GETSET 命令,设置 haicoder.net 的值为 haicoder,此时返回 haicoder.net 的旧值。

最后,使用 GET 命令,获取 haicoder.net 的值为刚才设置的 haicoder。

不存在旧值

不存在旧值,返回 nil

192.168.98.70:6379> EXISTS haicoder.net (integer) 0 192.168.98.70:6379> GETSET haicoder.net haicoder (nil) 192.168.98.70:6379> GET haicoder.net "haicoder"

使用 GETSET 命令,设置一个不存在的键 haicoder.net 的值为 haicoder,此时没有旧值,返回 nil。最后,使用 GET 命令,获取 haicoder.net 的值为刚才设置的 haicoder。

Redis GETSET命令总结

Redis GETSET 命令用于将 Redis 中给定 KEY 的值设为 value ,并返回 KEY 的旧值。Redis GETSET 命令语法:

192.168.98.70:6379> GETSET KEY value