LRANGE key start stop

Redis LRANGE 用于返回列表中指定区间内的元素,区间以偏移量 START 和 END 指定。 其中 0 表示列表的第一个元素, 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

*语法

redis LRANGE 命令基本语法如下:

redis 127.0.0.1:6379> LRANGE KEY_NAME START END

*注意LRANGE命令和编程语言区间函数的区别

假如你有一个包含一百个元素的列表,对该列表执行 LRANGE list 0 10 ,结果是一个包含11个元素的列表,这表明 stop 下标也在 LRANGE 命令的取值范围之内(闭区间),这和某些语言的区间函数可能不一致,比如Ruby的 Range.newArray#slice 和Python的 range() 函数。

*超出范围的下标

超出范围的下标值不会引起错误。

如果 start 下标比列表的最大下标 end ( LLEN list 减去 1 )还要大,那么 LRANGE 返回一个空列表。

如果 stop 下标比 end 下标还要大,Redis将 stop 的值设置为 end

*返回值

数组: 一个列表,包含指定区间内的元素。

*例子

redis>  RPUSH mylist "one"
(integer) 1
redis>  RPUSH mylist "two"
(integer) 2
redis>  RPUSH mylist "three"
(integer) 3
redis>  LRANGE mylist 0 0
1) "one"
redis>  LRANGE mylist -3 2
1) "one"
2) "two"
3) "three"
redis>  LRANGE mylist -100 100
1) "one"
2) "two"
3) "three"
redis>  LRANGE mylist 5 10
(empty list or set)
redis>