HEXISTS în Redis & In-Memory Data Store

Verifică dacă un câmp există într-un hash; întoarce 1 sau 0.

Sintaxă comandă
HEXISTS key field

Ce face HEXISTS

HEXISTS răspunde cu 1 dacă hash-ul conține câmpul și cu 0 dacă nu (sau dacă cheia nu există).

Este util când valoarea unui câmp poate fi un șir gol și vrei să deosebești „câmp gol” de „câmp lipsă”.

Parametri

Parametru Descriere
key Cheia hash-ului.
field Câmpul verificat.

Ce returnează

1 dacă există câmpul, altfel 0.

Exemple

Exemplul 1: Are utilizatorul telefon salvat?

Câmpul telefon există, chiar dacă valoarea e goală.

HSET utilizator:9 nume Dan telefon ""
HEXISTS utilizator:9 telefon
HEXISTS utilizator:9 email

Ieșire în redis-cli

127.0.0.1:6379> HSET utilizator:9 nume Dan telefon ""
(integer) 2
127.0.0.1:6379> HEXISTS utilizator:9 telefon
(integer) 1
127.0.0.1:6379> HEXISTS utilizator:9 email
(integer) 0

Greșeli frecvente

  • Nu face HEXISTS urmat de HSET ca să scrii „doar dacă lipsește”: folosește HSETNX, care e atomic.

Comenzi înrudite

  • HGET: Citește valoarea unui singur câmp dintr-un hash; întoarce nil dacă câmpul sau cheia lipsesc.
  • HSET: Scrie unul sau mai multe câmpuri într-un hash (un obiect cu perechi câmp–valoare), creând hash-ul dacă lipsește.
  • EXISTS: Verifică dacă una sau mai multe chei există și întoarce câte dintre ele au fost găsite.