-
SET
设置为保存字符串 . 如果已包含某个值,则无论其类型如何,它都会被覆盖。 成功操作后,将丢弃与密钥关联的任何先前的生存时间。
set key value [NX | XX] [GET] [EX seconds | PX milliseconds | EXAT unix-time-seconds | PXAT unix-time-milliseconds | KEEPTTL]
选项:
EX
seconds (秒) – 设置指定的过期时间,以秒为单位(正整数)。PX
milliseconds – 设置指定的过期时间,以毫秒为单位(正整数)。EXAT
timestamp-seconds – 设置密钥过期的指定 Unix 时间,以秒为单位(正整数)。PXAT
timestamp-milliseconds – 设置密钥过期的指定 Unix 时间,以毫秒为单位(正整数)。- 注意: 此处的
Unix
时间是指 1970年后的多少秒, 而不是当前Unix
系统的时间后多少秒, 若要写为当前时间后的多少秒应该搭配 编程语言获取当前距离Unix
时间 + x 秒 使用
- 注意: 此处的
NX
– 仅当 key 尚不存在时才设置 key。XX
– 仅当 key 已存在时才设置 key。KEEPTTL
– 保留与键关联的生存时间。GET
– 返回存储在 key 处的旧字符串,如果 key 不存在,则返回 nil。如果存储在 key 的值不是字符串,则返回错误并中止。
注意: 若使用
nx
或xx
选项, 应将nx
和xx
选项写在最前面 -
GET
获取 的值。 如果 key 不存在,则返回 special 值。 如果存储的值不是字符串,则会返回错误,因为仅处理字符串值。
get key
-
MSET
为多个 key 同时设置各自的 value, 若 key 已存在, 则将其覆盖
MSET key value [key value ...]
-
MSETNX
与 MSET 类似, 不同的是若将要设置的 key 已存在, 则不会对这个 key 进行任何操作
MSETNX key value [key value ...]
-
MGET
返回所有指定 key 的 value. 对于每个不包含 string or 不存在的 key, 以 nil 返回.
MGET key [key ...]
-
GETDEL
获取 value 并 删除 key. 类似于 GET, 但在成功时会删除 key.(当且仅当键的值类型为字符串时)
GETDEL key
-
SETRANGE
覆盖存储在 key 处的字符串的一部分,从指定下标开始, 对于要更改的整个value 的长度, 将后面对应长度的字节进行覆盖。
SETRANGE key offset value
-
GETRANGE
类似于切片, 获取 string 中, 从 start - end 的所有值
GETRANGE key <start> <end>
-
INCR
将存储的数字递增 1。 如果该键不存在,则将其设置为 before perform the operation。 如果键包含错误类型的值或包含 字符串,但不能表示为 Integer。 此作仅限于 64 位有符号整数
INCR key
-
INCRBY
将存储的数字 增加指定数字。
INCRBY key increment
-
DECR
将存储的数字减 1。 如果该键不存在,则将其设置为 before perform the operation。 如果键包含错误类型的值或包含 字符串,但不能表示为 Integer。 此作仅限于 64 位有符号整数。
DECR key
-
DECRBY
将存储的数字减指定数字。
DECRBY key decrement
-
STRLEN
获取指定 key 的长度
STRLEN key
-
APPEND
向 key 追加指定内容
APPEND key value
-
GETSET
将给定 key 值 设为 value, 并返回 key 的旧值。 先 GET 再 SET
GETSET
可与INCR
一起使用,用于原子复位计数。GETSET key value
使用场景:
有一个应用,它记录特定事件的发生次数。每次事件发生时,都会调用
INCR
来增加计数器的值。然而,在某些情况下(例如,每天午夜),你可能希望获取当前计数器的值并将其重置为零,以便开始计算下一时段的事件数量。# 假设 event_counter 初始值为 5 (通过多次 INCR 操作达到) INCR event_counter # 增加到 6 GETSET event_counter 0 # 返回 6 并将 event_counter 设置为 0
# 假设 event_counter 初始值为 5 (通过多次 INCR 操作达到) INCR event_counter # 增加到 6 GETSET event_counter 0 # 返回 6 并将 event_counter 设置为 0
redis的字符串类型
于 2025-02-17 22:35:24 首次发布