redisltrimコマンド
Redis Ltrim Command
関連コマンド
- BLPOP
- BRPOP
- BRPOPLPUSH
- LINDEX
- LINSERT
- FULL
- LPOP
- LPUSH
- LPUSHX
- レンジ
- LREM
- LSET
- LTRIM
- RPOP
- RPOPLPUSH
- RPUSH
- RPUSHX
バージョンに参加1.0.0。
時間計算量:O(N)ここで、Nは操作によって削除される要素の数です。
指定された要素の指定された範囲のみが含まれるように、既存のリストをトリミングします。 start
とstop
の両方はゼロベースのインデックスです。ここで、0
リストの最初の要素(ヘッド)、1
次の要素など。
例:LTRIM foobar 0 2
foobar
に保存されているリストを変更しますリストの最初の3つの要素だけが残るようにします。
start
およびend
リストの最後からのオフセットを示す負の数にすることもできます。ここで、-1
リストの最後の要素です-2
最後から2番目の要素など。
範囲外のインデックスはエラーを生成しません:if start
リストの最後、つまりstart > end
より大きい場合、結果は空のリストになります(これにより、key
が削除されます)。 end
の場合リストの最後よりも大きい場合、Redisはそれをリストの最後の要素のように扱います。
の一般的な使用法 LTRIM と一緒に LPUSH / RPUSH 。例えば:
LPUSH mylist someelement LTRIM mylist 0 99
このコマンドのペアは、リストが100要素を超えないようにしながら、リストに新しい要素をプッシュします。これは、Redisを使用してログを保存する場合などに非常に便利です。このように使用する場合は注意が必要です LTRIM はまたは(1)平均的な場合、リストの末尾から1つの要素だけが削除されるためです。
戻り値
例
繰り返す> RPUSH mylist'one '|_+_|繰り返す> RPUSH mylist'two '
(integer) 1繰り返す> RPUSH mylist'three '
(integer) 2繰り返す> LTRIM mylist 1 -1
(integer) 3繰り返す> LRANGE mylist 0 -1
OK繰り返す>