srandmember
SRANDMEMBER
Redis 開発者教育の申込
|
Redis 定期点検/技術サポートRedis Technical Support |
Redis エンタープライズサーバーRedis Enterprise Server |
|---|
集合から無作為に member を取得
使い方は srandmember key です。
SPOP は取得してデータを削除しますが、このコマンドは取得だけします。
Example
| コマンド> | sadd myset A B C D |
| 結果> | 4 |
| コマンド> | srandmember myset |
| 結果> | B |
| コマンド> | srandmember myset |
| 結果> | C |
count は version 2.6 から使用できます
使い方は srandmember key count です。
count が正の数の場合、member を重複せずに取得します。
count が負の数の場合、member を重複して取得することもあります。
これは袋から球を取り出すことにたとえられます。
例えば count が 2 のときは 2 個の球を取り出し、A を先に取り出したなら B,C,D のどれかを取り出します。
count が -2 のときは 2 個の球を取り出し、A を先に取り出したなら、A を再び袋に入れて A,B,C,D のどれかを取り出します。
そのため A,A を取り出すこともあります。
Example
| コマンド> | srandmember myset 2 |
| 結果> | 0) A 1) B |
| コマンド> | srandmember myset -2 |
| 結果> | 0) A 1) A |
member より count が大きい場合
count が正の数の場合、member 個数だけ取得します。
count が負の数の場合、member を重複して count 個取得します。
Example
| コマンド> | srandmember myset 6 |
| 結果> | 0) A 1) B 2) C 3) D |
| コマンド> | srandmember myset -6 |
| 結果> | 0) A 1) B 2) C 3) D 4) B 5) C |
構文
SRANDMEMBER key [count]
- このコマンドは version 1.0.0 から使用できます。
- 時間計算量は O(N) です。N は count の個数です。
- count は version 2.6 から使用できます。
| 関連コマンド | SPOP |
| Clients for Java | Jedis, Lettuce, Redisson | Clients for C | Hiredis |
| << SPOP | SRANDMEMBER | SSCAN >> |
|---|
Email
返事がかかってなれば、メールでお知らせします。
