Redis set型のデータをランダムに取得する
Redisで、set型のデータをランダムに取得する手順を記述してます。「srandmember」にキー名と取得したい件数を指定するだけで可能です。ここでは実際に実行した結果を掲載してます。
環境
- OS CentOS Stream release 9
- Redis 7.0.5
手順
set型のデータをランダムに取得するには、「srandmember」を使用します。
srandmember キー名 取得する件数
実際に、使用して取得してみます。
まずは値を設定します。
127.0.0.1:6379> sadd s1 "abc"
(integer) 1
127.0.0.1:6379> sadd s1 "def"
(integer) 1
127.0.0.1:6379> sadd s1 "ghi"
(integer) 1
127.0.0.1:6379> sadd s1 "jkl"
(integer) 1
127.0.0.1:6379> sadd s1 "mno"
(integer) 1
ランダムに取得してみます。
127.0.0.1:6379> srandmember s1
"jkl"
127.0.0.1:6379> srandmember s1
"jkl"
127.0.0.1:6379> srandmember s1
"def"
127.0.0.1:6379> srandmember s1
"abc"
127.0.0.1:6379> srandmember s1
"ghi"
ランダムに取得されていることが確認できます。
キーがない場合は、「空」が返ります。
127.0.0.1:6379> srandmember s2 2
(empty array)
件数を指定
件数を指定することも可能です。重複はしません。
127.0.0.1:6379> srandmember s1 3
1) "def"
2) "jkl"
3) "abc"
127.0.0.1:6379> srandmember s1 2
1) "abc"
2) "ghi"
マイナスを指定すると重複が発生します。
127.0.0.1:6379> srandmember s1 -3
1) "jkl"
2) "ghi"
3) "ghi"
127.0.0.1:6379> srandmember s1 -3
1) "def"
2) "ghi"
3) "abc"
127.0.0.1:6379> srandmember s1 -3
1) "def"
2) "mno"
3) "def"
-
前の記事
Google スライド オブジェクトを回転させるショートカットキー 2023.11.04
-
次の記事
kotlin Listの要素を検索する 2023.11.06
コメントを書く