Sets have 2 main differences with lists:

  1. sets are not ordered
  2. sets only hold an item once

Create a set using

SADD <setkey> <value>

The same command is used to add more items to the set.


SADD names "Flavio"
SADD names "Roger"
SADD names "Tony" "Mark" "Jane"

Get all the items in a set using SMEMBERS <setkey>:

Find out if a value is in a set with SISMEMBER:

SISMEMBER names "Flavio"

To know how many items are in a set, use SCARD:

SCARD names

Get (without removing) an item from the set, randomly:


Extract (and remove) an item from the set, casually ordered:

SPOP names

You can extract multiple items at once:

SPOP names 2

Remove an item from a set by value:

SREM names "Flavio"

Get the items contained in 2 different sets, exclusing elements only included in one with SINTER:

SINTER set1 set2

See all the sets commands here.