Redis Streams – XREVRANGE命令

2020年8月9日19:15:34 评论 43

XREVRANGE key end start [COUNT count]

此命令与XRANGE完全相同,但显著的区别是以相反的顺序返回条目,并以相反的顺序获取开始-结束参数:在XREVRANGE中,你需要先指定结束ID,再指定开始ID,该命令就会从结束ID侧开始生成两个ID之间(或完全相同)的所有元素。

因此,例如,要获得从较高ID到较低ID的所有元素,可以使用:

XREVRANGE + -

类似于只获取添加到流中的最后一个元素,可以使用:

XREVRANGE + - COUNT 1

使用XREVRANGE迭代

XRANGE一样,此命令可以用于迭代整个流的内容,但请注意,在这种情况中,下一个命令调用应该使用最后一个条目的ID,序列号减1。但如果序列号已经是0,则ID的时间部分应该减1,且序列号部分应该设置成最大可能的序列号,即18446744073709551615,或者可以完全省略,命令将自动假设它是这样一个数字(有关不完整ID的更多信息,请参阅XRANGE)。

例子:

> XREVRANGE writers + - COUNT 2
1) 1) 1526985723355-0
   2) 1) "name"
      2) "Ngozi"
      3) "surname"
      4) "Adichie"
2) 1) 1526985712947-0
   2) 1) "name"
      2) "Agatha"
      3) "surname"
      4) "Christie"

返回的最后ID是1526985712947-0,因为序列号已经是0,下一个ID我将不使用特殊ID+,而是1526985712946-18446744073709551615,或者只是18446744073709551615

> XREVRANGE writers 1526985712946-18446744073709551615 - COUNT 2
1) 1) 1526985691746-0
   2) 1) "name"
      2) "Toni"
      3) "surname"
      4) "Morris"
2) 1) 1526985685298-0
   2) 1) "name"
      2) "Jane"
      3) "surname"
      4) "Austen"

所以直到迭代完成并且没有返回结果。更多有关迭代的信息,请参阅XRANGE页面。

返回值

array-reply:

此命令返回ID在指定区间的条目,从较高的ID到较低的ID中匹配。 返回的条目是完整的,这意味着将返回ID及其组成的所有字段。 此外,返回的条目及其字段和值的顺序与以使用XADD添加的完全相同。

例子

redis> XADD writers * name Virginia surname Woolf
"1539863673862-0"
redis> XADD writers * name Jane surname Austen
"1539863673863-0"
redis> XADD writers * name Toni surname Morris
"1539863673865-0"
redis> XADD writers * name Agatha surname Christie
"1539863673866-0"
redis> XADD writers * name Ngozi surname Adichie
"1539863673867-0"
redis> XLEN writers
(integer) 5
redis> XREVRANGE writers + - COUNT 1
1) 1) "1539863673867-0"
   2) 1) "name"
	  2) "Ngozi"
	  3) "surname"
	  4) "Adichie"
redis> 

相关参考链接

Streams相关命令:

命令组 命令
Streams(流) XACK;   XADD;   XCLAIM;   XDEL;   XGROUP;
XINFO;   XLEN;   XPENDING;   XRANGE;
XREAD;   XREADGROUP;   XREVRANGE;   XTRIM;

全部命令组:Keys(键)Strings(字符串)Hashes(哈希表)Lists(列表)Sets(集合)Sorted Sets(有序集合)Pub/Sub(发布/订阅)Scripting(脚本)Server(服务器)Transactions(事物)Geo(地理位置)Cluster(集群)Connection(连接)Streams(流)HyperLogLog

回到总目录:Redis命令参考手册(总目录)

素课网
  • 本文由 发表于 2020年8月9日19:15:34
  • 转载请注明:https://www.suketech.com/9003.html
Redis Cluster – READONLY命令 Redis命令参考

Redis Cluster – READONLY命令

READONLY 起始版本:3.0.0 时间复杂度:O(1) 开启与 Redis Cluster 从节点连接的读请求 通常,从节点将重定向客户端到认证过的主节点,以获取在指定命令中所涉及的哈希槽,然而...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: