LTRIM

语法
LTRIM key start stop
可用版本
1.0.0
时间复杂度
O(N),其中 N 是操作要移除的元素数量。
ACL 类别
@write, @list, @slow,

修剪现有列表,使其仅包含指定范围内的元素。startstop 都是从零开始的索引,其中 0 是列表的第一个元素(表头),1 是下一个元素,依此类推。

例如:LTRIM foobar 0 2 将修改存储在 foobar 中的列表,使其仅保留列表的前三个元素。

startend 也可以是负数,表示从列表末尾开始的偏移量,其中 -1 是列表的最后一个元素,-2 是倒数第二个元素,依此类推。

超出范围的索引不会产生错误:如果 start 大于列表的末尾,或 start > end,结果将为空列表(这会导致 key 被移除)。如果 end 大于列表的末尾,Redis 将将其视为列表的最后一个元素。

LTRIM 的一个常见用法是与 LPUSH / RPUSH 结合使用。例如

LPUSH mylist someelement
LTRIM mylist 0 99

这对命令将在列表上推送一个新元素,同时确保列表不会增长到超过 100 个元素。这在使用 Redis 存储日志时非常有用。重要的是要注意,当以这种方式使用时,LTRIM 是一个 O(1) 操作,因为在平均情况下,只从列表的尾部移除一个元素。

示例

RPUSH mylist "one" RPUSH mylist "two" RPUSH mylist "three" LTRIM mylist 1 -1 LRANGE mylist 0 -1

RESP2/RESP3 回复

简单字符串回复: OK
RATE THIS PAGE
Back to top ↑