XREVRANGE

用法
XREVRANGE key end start [ COUNT count ]
复杂度
O(N),其中 N 是返回的元素数量。如果 N 是常量(例如,总是使用 COUNT 请求前 10 个元素),则可以认为是 O(1)。
5.0.0
ACL 类别
@stream, @read, @slow

此命令与 XRANGE 完全相同,但显著区别在于它以逆序返回条目,并且也以逆序接收起始-结束范围:在 XREVRANGE 中,你需要先指定 end ID,然后指定 start ID,命令将生成这两个 ID 之间(或完全相同)的所有元素,从 end 侧开始。

例如,要获取从高 ID 到低 ID 的所有元素,可以使用

XREVRANGE somestream + -

类似地,要获取添加到流中的最后一个元素,只需发送

XREVRANGE somestream + - COUNT 1

示例

127.0.0.1:6379> XADD writers * name Virginia surname Woolf
"1714701492147-0"
127.0.0.1:6379> XADD writers * name Jane surname Austen
"1714701492157-0"
127.0.0.1:6379> XADD writers * name Toni surname Morrison
"1714701492167-0"
127.0.0.1:6379> XADD writers * name Agatha surname Christie
"1714701492177-0"
127.0.0.1:6379> XADD writers * name Ngozi surname Adichie
"1714701492187-0"
127.0.0.1:6379> XLEN writers
(integer) 5
127.0.0.1:6379> XREVRANGE writers + - COUNT 1
1) 1) "1714701492187-0"
   2) 1) "name"
      2) "Ngozi"
      3) "surname"
      4) "Adichie"

RESP2/RESP3 回复

数组回复:此命令返回 ID 与指定范围匹配的条目。返回的条目是完整的,这意味着它们由的 ID 和所有字段都会被返回。此外,条目及其字段和值以与 XADD 添加它们时相同的顺序返回。

历史

版本 更改
6.2.0

增加了排他范围。