Redis リストのインデックス番号を指定して値を更新する

Redisで、リストのインデックス番号を指定して値を更新する手順を記述してます。
環境
- OS Ubuntu 21.10 (Impish Indri)
- Redis 6.2.6
手順
リストのインデックス番号を指定して値を更新するには、「lset」を使用します。
lset キー名 インデックス番号 更新する値
実際に、以下のリストを作成して更新してみます。
127.0.0.1:6379> rpush list1 "aaa"
(integer) 1
127.0.0.1:6379> rpush list1 "bbb"
(integer) 2
127.0.0.1:6379> rpush list1 "ccc"
(integer) 3
127.0.0.1:6379> rpush list1 "ddd"
(integer) 4
127.0.0.1:6379> rpush list1 "eee"
(integer) 5
インデックス番号を指定して更新してみます。
127.0.0.1:6379> lset list1 2 "CCC"
OK
127.0.0.1:6379> lrange list1 0 -1
1) "aaa"
2) "bbb"
3) "CCC"
4) "ddd"
5) "eee"
127.0.0.1:6379> lset list1 3 "DDD"
OK
127.0.0.1:6379> lrange list1 0 -1
1) "aaa"
2) "bbb"
3) "CCC"
4) "DDD"
5) "eee"
マイナスを指定
マイナスを指定すると、後方から取得されていきます。
※一番最後が「-1」になります。
127.0.0.1:6379> lset list1 -1 "EEE"
OK
127.0.0.1:6379> lrange list1 0 -1
1) "aaa"
2) "bbb"
3) "CCC"
4) "DDD"
5) "EEE"
127.0.0.1:6379> lset list1 -2 "EEE"
OK
127.0.0.1:6379> lrange list1 0 -1
1) "aaa"
2) "bbb"
3) "CCC"
4) "EEE"
5) "EEE"
-
前の記事
javascript オブジェクトのkeyに変数を使用する 2022.10.15
-
次の記事
WinSCP ブックマークウィンドウを開くショートカットキー 2022.10.15
コメントを書く