What's new in Valkey 9.0? Discover new features and improvements. Read the announcement.

HSETNX

Sets the value of a field in a hash only when the field doesn't exist.

Usage
HSETNX key field value
Complexity
O(1)
Since
2.0.0
ACL Categories
@fast, @hash, @write
Command flags
WRITE, DENYOOM, FAST

Sets field in the hash stored at key to value, only if field does not yet exist. If key does not exist, a new key holding a hash is created. If field already exists, this operation has no effect.

Examples

127.0.0.1:6379> HSETNX myhash field "Hello"
(integer) 1
127.0.0.1:6379> HSETNX myhash field "World"
(integer) 0
127.0.0.1:6379> HGET myhash field
"Hello"

Replies

RESP2

One of the following:

  • Integer reply: 0 if the field already exists in the hash and no operation was performed.
  • Integer reply: 1 if the field is a new field in the hash and the value was set.

RESP3

One of the following:

  • Integer reply: 0 if the field already exists in the hash and no operation was performed.
  • Integer reply: 1 if the field is a new field in the hash and the value was set.