教程 > Redis教程 > Redis 命令 阅读:26

Redis SET 命令

Redis SET 命令

返回 Redis字符串(string)


Redis SET 命令用于将键 key 设定为指定的“字符串”值。

如果 key 已经保存了一个值,那么这个操作会直接覆盖原来的值,并且忽略原始类型。

当 set 命令执行成功之后,之前设置的过期时间都将失效

语法

redis SET 命令基本语法如下:

redis 127.0.0.1:6379> SET KEY_NAME VALUE

可用版本

>= 1.0.0

返回值

字符串: 如果SET命令正常执行那么回返回OK 多行字符串: 使用 GET 选项,返回 key 存储的值,如果 key 不存在返回空 空: 否则如果加了NX 或者 XX选项,SET 没执行,那么会返回nil。

选项

从2.6.12版本开始,redis为SET命令增加了一系列选项:

  • EX seconds – 设置键key的过期时间,单位时秒
  • PX milliseconds – 设置键key的过期时间,单位时毫秒
  • NX – 只有键key不存在的时候才会设置key的值
  • XX – 只有键key存在的时候才会设置key的值
  • KEEPTTL -- 获取 key 的过期时间
  • GET -- 返回 key 存储的值,如果 key 不存在返回空

    注意: 由于SET命令加上选项已经可以完全取代SETNX, SETEX, PSETEX, GETSET,的功能,所以在将来的版本中,redis可能会不推荐使用并且最终抛弃这几个命令。

示例

首先,我们在 redis 中创建一个 key 并设置值。

# 对不存在的键进行设置
redis 127.0.0.1:6379> SET jiyikey "value"
OK
redis 127.0.0.1:6379> GET jiyikey
"value"

# 对已存在的键进行设置
redis 127.0.0.1:6379> SET jiyikey "new-value"
OK
redis 127.0.0.1:6379> GET jiyikey
"new-value"

时间复杂度


SET 命令的时间复杂度:O(1)

返回 Redis字符串(string)

查看笔记

扫码一下
查看教程更方便