HEXPIREAT
语法
HEXPIREAT key unix-time-seconds [NX | XX | GT | LT] FIELDS numfields field [field ...]
- 可用版本
- Redis 开源版 7.4.0
- 时间复杂度
- O(N),其中 N 为指定字段的数量
- ACL 类别
-
@write
,@hash
,@fast
,
HEXPIREAT
的效果和语义与 HEXPIRE
相同,但它不是指定 TTL(生存时间)的秒数,而是采用自 Unix 纪元以来的绝对 Unix 时间戳(以秒为单位)。过去的时间戳将立即删除该字段。
有关此命令的具体语义,请参阅 HEXPIRE
。
选项
HEXPIREAT
命令支持一组选项。
NX
-- 对于每个指定的字段,仅在字段没有过期时间时设置过期时间。XX
-- 对于每个指定的字段,仅在字段已有过期时间时设置过期时间。GT
-- 对于每个指定的字段,仅在新的过期时间大于当前过期时间时设置过期时间。LT
-- 对于每个指定的字段,仅在新的过期时间小于当前过期时间时设置过期时间。
对于 GT
和 LT
,非易失性键被视为具有无限 TTL。NX
、XX
、GT
和 LT
选项互斥。
示例
redis> HSET mykey field1 "hello" field2 "world"
(integer 2)
redis> HEXPIREAT mykey 1715704971 FIELDS 2 field1 field2
1) (integer) 1
2) (integer) 1
redis> HTTL mykey FIELDS 2 field1 field2
1) (integer) 567
2) (integer) 567
RESP2/RESP3 回复
以下之一