sql >> Base de Datos >  >> NoSQL >> Redis

Cómo usar las listas ordenadas de Redis

Un conjunto ordenado asocia una clasificación a cada elemento de un conjunto.

Los conjuntos ordenados funcionan de manera similar a los conjuntos y usan comandos similares, excepto S ahora es Z , por ejemplo:

  • SADD -> ZADD
  • SPOP -> ZPOP

Pero son ligeramente diferentes.

ZADD acepta una puntuación :

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

Como puede ver, los valores aún deben ser únicos, pero ahora están asociados a una puntuación.

La puntuación no tiene que ser única.

Los elementos de un conjunto siempre se ordenan por puntuación.

Esto es muy útil para implementar algún tipo de herramienta de almacenamiento de datos como (ejemplo habitual) una tabla de clasificación. O para indicar la hora en que se agregó algún elemento, con una marca de tiempo.

Puedes obtener la puntuación de un elemento usando ZRANK :

ZRANK names "Flavio"

Enumere todos los elementos en un conjunto ordenado usando ZRANGE , que funciona de manera similar a LRANGE en listas:

ZRANGE names 0 -1

Añadir WITHSCORES para devolver también la información de las puntuaciones:

Puedes incrementar la puntuación de un elemento del conjunto usando ZINCRBY .

Vea todos los comandos de conjuntos ordenados aquí.