Ce face HDEL
HDEL elimină câmpurile date din hash și întoarce câte au fost șterse. Câmpurile care nu existau sunt ignorate. Din Redis 2.4.0 acceptă mai multe câmpuri deodată.
Dacă ștergi toate câmpurile, Redis șterge și cheia: un hash gol nu există în Redis.
Parametri
| Parametru | Descriere |
|---|---|
key |
Cheia hash-ului. |
field ... |
Câmpurile de șters. |
Ce returnează
Un (integer): numărul de câmpuri șterse efectiv.
Exemple
Exemplul 1: Eliminarea datelor temporare dintr-un profil
Câmpul cod_sms nu exista, deci se numără doar token.
HSET utilizator:7 nume Ana token abc123
HDEL utilizator:7 token cod_sms
HDEL utilizator:7 nume
EXISTS utilizator:7
Ieșire în redis-cli
127.0.0.1:6379> HSET utilizator:7 nume Ana token abc123
(integer) 2
127.0.0.1:6379> HDEL utilizator:7 token cod_sms
(integer) 1
127.0.0.1:6379> HDEL utilizator:7 nume
(integer) 1
127.0.0.1:6379> EXISTS utilizator:7
(integer) 0
Greșeli frecvente
- Ca să ștergi tot hash-ul, folosește
DELsauUNLINKpe cheie, nuHDELpe fiecare câmp. HDELfără niciun câmp dă eroare de număr greșit de argumente.
Comenzi înrudite
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.HEXISTS: Verifică dacă un câmp există într-un hash; întoarce 1 sau 0.DEL / UNLINK: Șterge una sau mai multe chei; UNLINK eliberează memoria în fundal, fără să blocheze serverul.