EXPIREAT
语法
EXPIREAT key unix-time-seconds [NX | XX | GT | LT]
- 可用版本
- 1.2.0
- 时间复杂度
- O(1)
- ACL 类别
-
@keyspace
,@write
,@fast
,
EXPIREAT
和 EXPIRE
的效果和语义相同,但它不指定以秒为单位的 TTL(生存时间),而是采用绝对 Unix 时间戳(自 1970 年 1 月 1 日以来的秒数)。过去的 timestamp 会立即删除该键。
有关命令的具体语义,请参阅 EXPIRE
的文档。
背景
为了将相对超时转换为 AOF 持久化模式的绝对超时,引入了 EXPIREAT
。当然,它可以直接用来指定给定键在将来某个特定时间过期。
选项
EXPIREAT
命令支持一组选项
NX
-- 仅当键没有过期时设置过期时间XX
-- 仅当键具有现有过期时间时设置过期时间GT
-- 仅当新的过期时间大于当前过期时间时设置过期时间LT
-- 仅当新的过期时间小于当前过期时间时设置过期时间
对于 GT
和 LT
而言,非易失性键被视为无限 TTL。GT
、LT
和 NX
选项是互斥的。
示例
RESP2/RESP3 响应
以下之一
历史
- 从 Redis 7.0.0 版本开始:添加选项:
NX
、XX
、GT
和LT
。