lpop
LPOP
Redis 開発者教育の申込
|
Redis 定期点検/技術サポートRedis Technical Support |
Redis エンタープライズサーバーRedis Enterprise Server |
|---|
リストの左からデータを取り出す
リストの左からデータを取り出します。リストからは削除されます。
Example
| コマンド> | lpush mylist value1 value2 value3 value4 |
| 結果> | 4 |
| コマンド> | lrange mylist 0 -1 |
| 結果> | 0) value4 1) value3 2) value2 3) value1 |
| コマンド> | lpop mylist |
| 結果> | value4 |
| コマンド> | lrange mylist 0 -1 |
| 結果> | 0) value3 1) value2 2) value1 |
| コマンド> | lpop mylist |
| 結果> | value3 |
キュー(queue)として使うとき
キューはデータを時間順に処理するときに使います。
先に受け取ったデータを先に処理します。LPUSH と RPOP を使います。
Example: Queue
| コマンド> | lpush mylist msg_1 msg_2 |
| 結果> | 2 |
| コマンド> | lpush mylist msg_3 msg_4 |
| 結果> | 4 |
| コマンド> | lrange mylist 0 -1 |
| 結果> | 0) msg_4 1) msg_3 2) msg_2 3) msg_1 |
| コマンド> | rpop mylist |
| 結果> | msg_4 |
| コマンド> | rpop mylist |
| 結果> | msg_3 |
スタック(stack)として使うとき
スタックは時間の逆順でデータを処理するときに使います。
後で受け取ったデータを先に処理します。LPUSH と LPOP を使います。
Example: Stack
| コマンド> | lpush mylist msg_1 msg_2 |
| 結果> | 2 |
| コマンド> | lpush mylist msg_3 msg_4 |
| 結果> | 4 |
| コマンド> | lrange mylist 0 -1 |
| 結果> | 0) msg_4 1) msg_3 2) msg_2 3) msg_1 |
| コマンド> | lpop mylist |
| 結果> | msg_1 |
| コマンド> | lpop mylist |
| 結果> | msg_2 |
複数データを取り出すとき: COUNT オプション
複数データを取り出すときは COUNT オプションを使います。
Count オプションは version 6.2 から使用できます。
Example: Count
| コマンド> | lpush mylist value1 value2 value3 value4 |
| 結果> | 4 |
| コマンド> | lpop mylist 3 |
| 結果> |
1) value4 2) value3 3) value2 |
構文
LPOP key [count]
- このコマンドは version 1.0.0 から使用できます。
- 時間計算量は O(N) です。N は返される値の数です。
- COUNT オプションは version 6.2 で追加されました。
| 関連コマンド | RPOP, LPUSH, RPUSH |
| Clients for Java | Jedis, Lettuce, Redisson | Clients for C | Hiredis |
| << RPOP | LPOP | RPUSH >> |
|---|
Email
返事がかかってなれば、メールでお知らせします。
