Redis リストからインデックス番号を指定して値を取得する

Redis リストからインデックス番号を指定して値を取得する

Redisで、リストからインデックス番号を指定して値を取得する手順を記述してます。

環境

  • OS Ubuntu 21.10 (Impish Indri)
  • Redis 6.2.6

手順

リストからインデックス番号を指定して値を取得するには、「lindex」を使用します。

※インデックスは「0」から始まり、値にマイナスを指定すると後方から取得します。

lindex キー名 インデックス番号

実際に、以下のリストを作成してインデックス番号を指定して値を取得してみます。

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> lrange list1 0 -1
1) "aaa"
2) "bbb"
3) "ccc"

各インデックス番号を指定して取得してみます。

127.0.0.1:6379> lindex list1 0
"aaa"

127.0.0.1:6379> lindex list1 1
"bbb"

127.0.0.1:6379> lindex list1 2
"ccc"

取得されていることが確認できます。

マイナスを指定

マイナスを指定すると、後方から取得されていきます。

127.0.0.1:6379> lindex list1 -1
"ccc"

127.0.0.1:6379> lindex list1 -2
"bbb"

127.0.0.1:6379> lindex list1 -3
"aaa"