LRANGE în Redis & In-Memory Data Store

Comenzi pentru liste Redis 1.0.0

Întoarce elementele unei liste dintre doi indici, inclusiv; LRANGE key 0 -1 întoarce toată lista.

Sintaxă comandă
LRANGE key start stop

Ce face LRANGE

LRANGE citește o porțiune din listă fără să o modifice. Indicii pornesc de la 0, iar ambele capete sunt incluse: LRANGE k 0 2 întoarce primele trei elemente.

Indicii negativi numără de la final: -1 e ultimul element, -2 penultimul. Indicii în afara listei nu dau eroare; Redis îi limitează la capetele listei.

Parametri

Parametru Descriere
start Indicele de început (0 = primul element).
stop Indicele de final, inclus (-1 = ultimul element).

Ce returnează

O listă cu elementele din interval (goală dacă cheia nu există sau intervalul e gol).

Exemple

Exemplul 1: Paginarea ultimelor notificări

Pagina 1 are elementele 0–1, pagina 2 elementele 2–3.

RPUSH notificari:ana n5 n4 n3 n2 n1
LRANGE notificari:ana 0 1
LRANGE notificari:ana 2 3

Ieșire în redis-cli

127.0.0.1:6379> RPUSH notificari:ana n5 n4 n3 n2 n1
(integer) 5
127.0.0.1:6379> LRANGE notificari:ana 0 1
1) "n5"
2) "n4"
127.0.0.1:6379> LRANGE notificari:ana 2 3
1) "n3"
2) "n2"

Exemplul 2: Indici negativi și intervale prea mari

Ultimele două elemente, apoi un interval care depășește lista.

LRANGE notificari:ana -2 -1
LRANGE notificari:ana 3 100
LRANGE notificari:dan 0 -1

Ieșire în redis-cli

127.0.0.1:6379> LRANGE notificari:ana -2 -1
1) "n2"
2) "n1"
127.0.0.1:6379> LRANGE notificari:ana 3 100
1) "n2"
2) "n1"
127.0.0.1:6379> LRANGE notificari:dan 0 -1
(empty array)

Greșeli frecvente

  • Spre deosebire de multe limbaje de programare, capătul stop este inclus.
  • LRANGE k 0 -1 pe o listă cu milioane de elemente blochează serverul; citește în bucăți.

Comenzi înrudite

  • LPUSH / RPUSH: Adaugă elemente la începutul (LPUSH) sau la sfârșitul (RPUSH) unei liste, creând lista dacă lipsește.
  • LTRIM: Păstrează doar elementele dintre doi indici și le șterge pe restul; ideal pentru liste cu lungime maximă.
  • LLEN: Întoarce numărul de elemente dintr-o listă; 0 dacă lista nu există.
  • ZRANGE: Întoarce membrii unui set sortat după poziție sau după scor (BYSCORE), crescător sau descrescător (REV), cu paginare (LIMIT).