ZrangebyscoreCommand: Contents
ZRANGEBYSCORE _key_ _min_ _max_ `[`LIMIT _offset_ _count_`]` (Redis >
ZRANGEBYSCORE _key_ _min_ _max_ `[`LIMIT _offset_ _count_`]` `[`WITHSCORES`]` (Redis >
ZCOUNT _key_ _min_ _max_
Exclusive intervals and infinity
Return value
Examples

# ZrangebyscoreCommand

ï»¿#sidebar SortedSetCommandsSidebar

# ZRANGEBYSCORE _key_ _min_ _max_ `[`LIMIT _offset_ _count_`]` (Redis >

1.1) =

# ZRANGEBYSCORE _key_ _min_ _max_ `[`LIMIT _offset_ _count_`]` `[`WITHSCORES`]` (Redis >

1.3.4) =

# ZCOUNT _key_ _min_ _max_

Time complexity: O(log(N))+O(M) with N being the number of elements in the sorted set and M the number of elements returned by the command, so if M is constant (for instance you always ask for the first ten elements with LIMIT) you can consider it O(log(N))

> Return the all the elements in the sorted set at key with a score between_min_ and max (including elements with score equal to min or max).

> The elements having the same score are returned sorted lexicographically asASCII strings (this follows from a property of Redis sorted sets and does notinvolve further computation).

> Using the optional LIMIT it's possible to get only a range of the matchingelements in an SQL-alike way. Note that if offset is large the commandsneeds to traverse the list for offset elements and this adds up to theO(M) figure.

> The ZCOUNT command is similar to ZRANGEBYSCORE but instead of returningthe actual elements in the specified interval, it just returns the numberof matching elements.

## Exclusive intervals and infinity

min and max can be -inf and +inf, so that you are not required to know what's the greatest or smallest element in order to take, for instance, elements "up to a given value".
Also while the interval is for default closed (inclusive) it's possible to specify open intervals prefixing the score with a "(" character, so for instance:

    ZRANGEBYSCORE zset (1.3 5

Will return all the values with score > 1.3 and <= 5, while for instance:

    ZRANGEBYSCORE zset (5 (10

Will return all the values with score > 5 and < 10 (5 and 10 excluded).

## Return value

ZRANGEBYSCORE returns a Multi bulk reply specifically a list of elements in the specified score range.
ZCOUNT returns a Integer reply specifically the number of elements matching the specified score range.

## Examples

    redis> zadd zset 1 foo
    (integer) 1
    redis> zadd zset 2 bar
    (integer) 1
    redis> zadd zset 3 biz
    (integer) 1
    redis> zadd zset 4 foz
    (integer) 1
    redis> zrangebyscore zset -inf +inf
    1. "foo"
    2. "bar"
    3. "biz"
    4. "foz"
    redis> zcount zset 1 2
    (integer) 2
    redis> zrangebyscore zset 1 2
    1. "foo"
    2. "bar"
    redis> zrangebyscore zset (1 2
    1. "bar"
    redis> zrangebyscore zset (1 (2
    (empty list or set)