# Ltrim
对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
语法
LTRIM key start stop
可用版本:
1.0.0
时间复杂度:
O(N) 其中 N 是操作要删除的元素数。
ACL 类别:
@write
,@list
,@slow
修剪现有列表,使其仅包含指定范围的指定元素。start
和都是stop
从零开始的索引,其中0
是列表的第一个元素(头部),1
下一个元素等等。
例如:LTRIM foobar 0 2
将修改存储在的列表,foobar
以便仅保留列表的前三个元素。
start
并且end
也可以是负数,表示距列表末尾的偏移量,其中-1
是列表的最后一个元素,-2
倒数第二个元素等等。
超出范围的索引不会产生错误:如果start
大于列表的末尾,或者start > end
,结果将是一个空列表(导致key
被删除)。如果end
大于列表的末尾,Redis 会将其视为列表的最后一个元素。
的常见用法LTRIM
是与LPUSH
/一起使用RPUSH
。例如:
LPUSH mylist someelement
LTRIM mylist 0 99
这对命令将在列表中推送一个新元素,同时确保列表不会超过 100 个元素。例如,这在使用 Redis 存储日志时非常有用。重要的是要注意,以这种方式使用时LTRIM
是一个 O(1) 操作,因为在平均情况下,只会从列表的尾部删除一个元素。
# 返回
简单的字符串回复
# 例子
redis> RPUSH mylist "one"
(integer) 1
redis> RPUSH mylist "two"
(integer) 2
redis> RPUSH mylist "three"
(integer) 3
redis> LTRIM mylist 1 -1
"OK"
redis> LRANGE mylist 0 -1
1) "two"
2) "three"
redis>
# 反馈
如果您在此页面上发现问题,或有改进建议,请提交请求以合并或打开存储库中的问题。