How to use Redis Sorted Lists
A sorted set associates a rank to each item in a set.
Sorted sets work in a similar way to sets, and they use similar commands, except S
is now Z
, for example:
SADD
->ZADD
SPOP
->ZPOP
But they are slightly different.
ZADD
accepts a score:
ZADD names 1 "Flavio"
ZADD names 2 "Syd"
ZADD names 2 "Roger"
As you can see, values must still be unique, but now they are associated to a score.
The score does not have to be unique.
Items in a set are always sorted by the score.
This is very useful to implement some kind of data storage tool like (usual example) a leaderboard. Or to indicate the time some item was added, with a timestamp.
You can get the score of an item using ZRANK
:
ZRANK names "Flavio"
List all items in a sorted set using ZRANGE
, which works similarly to LRANGE
in lists:
ZRANGE names 0 -1
Add WITHSCORES
to also return the scores information:
You can increment the score of an item in the set using ZINCRBY
.
See all the sorted sets commands here.
→ I wrote 17 books to help you become a better developer:
- C Handbook
- Command Line Handbook
- CSS Handbook
- Express Handbook
- Git Cheat Sheet
- Go Handbook
- HTML Handbook
- JS Handbook
- Laravel Handbook
- Next.js Handbook
- Node.js Handbook
- PHP Handbook
- Python Handbook
- React Handbook
- SQL Handbook
- Svelte Handbook
- Swift Handbook
Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025