HEXPIREAT
语法
HEXPIREAT key unix-time-seconds [NX | XX | GT | LT] FIELDS numfields field [field ...]
- 从以下位置开始可用:
- 7.4.0
- 时间复杂度:
- O(N),其中 N 是指定字段的数量
- ACL 类别:
-
@write
,@hash
,@fast
,
HEXPIREAT
具有相同的效果和语义HEXPIRE
,但不是
指定 TTL 的秒数(生存时间),它需要
自 Unix 纪元以来的绝对 Unix 时间戳(以秒为单位)。一个
timestamp 将立即删除该字段。
有关命令的特定语义,请参阅HEXPIRE
.
选项
这HEXPIREAT
命令支持一组选项:
NX
-- 对于每个指定的字段,仅当字段没有过期时间时,才设置过期时间。XX
-- 对于每个指定的字段,仅当该字段具有现有过期时间时,才设置过期时间。GT
-- 对于每个指定的字段,仅当新的过期时间大于当前过期时间时,才设置 expilation。LT
-- 对于每个指定的字段,仅当新的过期时间小于当前时间时,才设置 expirate。
非易失性密钥被视为无限 TTL,用于GT
和LT
.
这NS
,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 回复
以下选项之一: