HSETEX

Syntax
HSETEX key [FNX | FXX] [EX seconds | PX milliseconds |
  EXAT unix-time-seconds | PXAT unix-time-milliseconds | KEEPTTL]
  FIELDS numfields field value [field value ...]
Available since:
Redis CE 8.0.0
Time complexity:
O(N) where N is the number of fields being set.
ACL categories:
@write, @hash, @fast,

Set the value of one or more fields of a given hash key, and optionally set their expiration time or time-to-live (TTL).

Options

The HGETEX command supports a set of options:

  • FNX -- Only set the fields if none of them already exist.
  • FXX -- Only set the fields if all of them already exist.
  • EX seconds -- Set the specified expiration time in seconds.
  • PX milliseconds -- Set the specified expiration time in milliseconds.
  • EXAT unix-time-seconds -- Set the specified Unix time in seconds at which the fields will expire.
  • PXAT unix-time-milliseconds -- Set the specified Unix time in milliseconds at which the fields will expire.
  • KEEPTTL -- Retain the TTL associated with the fields.

The EX, PX, EXAT, PXAT, and KEEPTTL options are mutually exclusive.

Example

redis> HSETEX mykey EXAT 1740470400 FIELDS 2 field1 "Hello" field2 "World"
(integer) 1
redis> HTTL mykey FIELDS 2 field1 field2
1) (integer) 55627
2) (integer) 55627
redis> HSETEX mykey FNX EX 60 FIELDS 2 field1 "Hello" field2 "World"
(integer) 0
redis> HSETEX mykey FXX EX 60 KEEPTTL FIELDS 2 field1 "hello" field2 "world"
(error) ERR Only one of EX, PX, EXAT, PXAT or KEEPTTL arguments can be specified
redis> HSETEX mykey FXX KEEPTTL FIELDS 2 field1 "hello" field2 "world"
(integer) 1
redis> HTTL mykey FIELDS 2 field1 field2
1) (integer) 55481
2) (integer) 55481

RESP2/RESP3 Reply

One of the following:


RATE THIS PAGE
Back to top ↑