Redis
 sql >> Database >  >> NoSQL >> Redis

Come utilizzare gli elenchi ordinati Redis

Un set ordinato associa un rango a ciascun elemento di un set.

Gli insiemi ordinati funzionano in modo simile agli insiemi e usano comandi simili, tranne S ora è Z , ad esempio:

  • SADD -> ZADD
  • SPOP -> ZPOP

Ma sono leggermente diversi.

ZADD accetta un punteggio :

ZADD names 1 "Flavio"
ZADD names 2 "Syd"
ZADD names 2 "Roger"

Come puoi vedere, i valori devono essere ancora univoci, ma ora sono associati a un punteggio.

Il punteggio non deve essere univoco.

Gli elementi in un set sono sempre ordinati in base al punteggio.

Questo è molto utile per implementare una sorta di strumento di archiviazione dati come (normale esempio) una classifica. O per indicare l'ora in cui è stato aggiunto un elemento, con un timestamp.

Puoi ottenere il punteggio di un oggetto usando ZRANK :

ZRANK names "Flavio"

Elenca tutti gli articoli in un set ordinato usando ZRANGE , che funziona in modo simile a LRANGE negli elenchi:

ZRANGE names 0 -1

Aggiungi WITHSCORES per restituire anche le informazioni sui punteggi:

Puoi aumentare il punteggio di un oggetto nel set usando ZINCRBY .

Vedi tutti i comandi degli insiemi ordinati qui.