Redis Zrangebylex-Befehl
Der Redis-Befehl Zrangebylex wird verwendet, um Mitglieder innerhalb eines angegebenen Bereichs in einer sortierten Menge in lexikografischer Reihenfolge abzurufen. Dieser Befehl wird hauptsächlich für sortierte Mengen verwendet, deren Mitglieder Zeichenketten sind.
Syntax
Die grundlegende Syntax des Redis-Befehls Zrange lautet wie folgt:
ZRANGEBYLEX key min max [LIMIT offset count]
key: Schlüsselname, gibt die sortierte Menge an, auf der operiert werden soll.minundmax: Grenzwerte des lexikografischen Bereichs. Diese beiden Werte können negativ unendlich (-) oder positiv unendlich (+) oder bestimmte Zeichenfolgenwerte sein. Ein Zeichenfolgenwert stellt die lexikografische Grenze der Mitglieder in der sortierten Menge dar.LIMIT offset count: Optionale Parameter, die verwendet werden, um die Anzahl der zurückgegebenen Ergebnisse zu begrenzen.offsetGibt an, wie viele Elemente vom Anfang übersprungen werden sollen,countGibt an, wie viele Elemente zurückgegeben werden sollen.
Befehlsverhalten:
- Wenn
minJa+odermindas erste Element danach,maxJa-odermaxdas letzte Element davor, dann den Schlüssel zurückgebenkeyalle Elemente in der gespeicherten sortierten Menge. - Wenn
minundmaxbeide bestimmte Zeichenketten sind, dann die lexikografische Reihenfolge in der sortierten Menge zwischenminundmaxalle Elemente dazwischen. - Wenn
minJa+odermindas erste Element danach, undmaxeine bestimmte Zeichenkette ist, dann die lexikografische Reihenfolge in der sortierten Menge zurückgeben, die größer oder gleichmaxalle Elemente. - Wenn
mineine bestimmte Zeichenkette ist, undmaxJa-odermaxdas letzte Element davor, dann die lexikografische Reihenfolge in der sortierten Menge zurückgeben, die kleiner oder gleichminalle Elemente.
Verfügbare Versionen
>= 2.8.9
Rückgabewert
Liste der Elemente innerhalb des angegebenen Bereichs.
Beispiele
redis 127.0.0.1:6379> ZADD myzset 0 a 0 b 0 c 0 d 0 e 0 f 0 g (integer) 7 redis 127.0.0.1:6379> ZRANGEBYLEX myzset - [c 1) "a" 2) "b" 3) "c" redis 127.0.0.1:6379> ZRANGEBYLEX myzset - (c 1) "a" 2) "b" redis 127.0.0.1:6379> ZRANGEBYLEX myzset [aaa (g 1) "b" 2) "c" 3) "d" 4) "e" 5) "f" redis>
Angenommen, wir haben eine sortierte Menge myzset, die die folgenden Elemente enthält:
ZADD myzset 0 a 0 b 0 c 0 d 0 e 0 f 0 g
Alle Elemente abrufen, deren lexikografische Reihenfolge zwischen a und f liegt:
ZRANGEBYLEX myzset a f
Alle Elemente abrufen, deren lexikografische Reihenfolge größer als b und kleiner als f ist:
ZRANGEBYLEX myzset [b (f
Elemente abrufen, deren lexikografische Reihenfolge zwischen a und f liegt, aber nur die ersten 3 zurückgeben:
ZRANGEBYLEX myzset a f LIMIT 0 3
Bitte beachten Sie, dass der Befehl ZRANGEBYLEX Bereichsabfragen nach lexikografischer Reihenfolge und nicht nach Score durchführt. Dadurch eignet er sich sehr gut für Szenarien, in denen Daten in alphabetischer Reihenfolge abgerufen werden müssen.
Weitere Erweiterungen
