Removes members in a sorted set within a lexicographical range. Deletes the sorted set if all members were removed.
ZREMRANGEBYLEX
key
min max
When all the elements in a sorted set are inserted with the same
score, in order to force lexicographical ordering, this command removes
all elements in the sorted set stored at key
between the
lexicographical range specified by min
and
max
.
The meaning of min
and max
are the same of
the ZRANGEBYLEX
command. Similarly, this command actually
removes the same elements that ZRANGEBYLEX
would return if
called with the same min
and max
arguments.
Integer reply: the number of members removed.
Integer reply: Number of members removed.
O(log(N)+M) with N being the number of elements in the sorted set and M the number of elements removed by the operation.
@slow @sortedset @write
127.0.0.1:6379> ZADD myzset 0 aaaa 0 b 0 c 0 d 0 e
(integer) 5
127.0.0.1:6379> ZADD myzset 0 foo 0 zap 0 zip 0 ALPHA 0 alpha
(integer) 5
127.0.0.1:6379> ZRANGE myzset 0 -1
1) "ALPHA"
2) "aaaa"
3) "alpha"
4) "b"
5) "c"
6) "d"
7) "e"
8) "foo"
9) "zap"
10) "zip"
127.0.0.1:6379> ZREMRANGEBYLEX myzset [alpha [omega
(integer) 6
127.0.0.1:6379> ZRANGE myzset 0 -1
1) "ALPHA"
2) "aaaa"
3) "zap"
4) "zip"
BZMPOP, BZPOPMAX, BZPOPMIN, ZADD, ZCARD, ZCOUNT, ZDIFF, ZDIFFSTORE, ZINCRBY, ZINTER, ZINTERCARD, ZINTERSTORE, ZLEXCOUNT, ZMPOP, ZMSCORE, ZPOPMAX, ZPOPMIN, ZRANDMEMBER, ZRANGE, ZRANGESTORE, ZRANK, ZREM, ZREMRANGEBYRANK, ZREMRANGEBYSCORE, ZREVRANK, ZSCAN, ZSCORE, ZUNION, ZUNIONSTORE.