Redis SETRANGEコマンドの使い方 – 文字列値の一部を更新する方法
このチュートリアルでは、Redisデータストア内の指定したキーに保存された文字列値の一部を更新する方法を解説します。そのために、RedisのSETRANGEコマンドを使用します。
SETRANGEコマンドとは
SETRANGEコマンドは、開始オフセット(start offset)を受け取り、その位置から文字列値の上書きを行います。開始オフセットが現在の文字列値の長さよりも大きい場合は、指定されたオフセットの位置に届くまで文字列値がゼロバイト(0x00)でパディングされます。インデックスはゼロベースで扱われるため、0は先頭の文字、1は2番目の文字を意味します。
また、指定したキーがRedisデータストアに存在しない場合は、操作を実行する前に自動的にキーが作成され、空の文字列として初期化されます。Redis SETRANGEコマンドの基本構文は以下の通りです。
構文
redis host:post> SETRANGE <keyname> <start> <value>
- keyname: 更新対象のキー名
- start: 上書きを開始するオフセット(0から始まる)
- value: 上書きする文字列
戻り値
(integer) 操作後の文字列全体の長さ(文字数)。 エラー: キーが存在するが、そのキーに保存されている値が文字列型ではない場合。
使用例

補足ポイント
SETRANGEは既存の文字列を部分的に書き換える際に便利なコマンドです。例えば、大きな文字列の一部だけを効率的に変更したい場合や、固定長のデータ領域を扱う場合に活用できます。ただし、大きなオフセットを指定するとゼロバイトによるパディングが発生し、メモリ使用量が増加する点には注意が必要です。
参考資料
- SETRANGEコマンド公式ドキュメント
以上が、Redisデータストア内のキーに保存された文字列値の一部を更新する方法の解説でした。この記事がお役に立てたら、ぜひコメント欄でご意見をお聞かせください。また、周囲の方々とのシェアも歓迎します。
-
Redis文字列型コマンド徹底解説 – データストアの文字列値を管理する全24コマンド
文字列(String)は文字が連なったデータであり、Redisにおける最も基本的かつ重要なデータ型の一つです。Redisでは、キーに対して文字列を値として保存することができ、専用のコマンドを使うことで、その保存・管理・取得を柔軟に行えます。本記事では、Redisデータベース内の文字列値を操作するための主要なコマンドを、構文や使用例とあわせて詳しく解説します。 基本構文 redis host:port> <コマンド名> <キー名> 使用例 Redis文字列値の管理コマンド一覧 以下は、Redisデータベース内の文字列値を管理するうえで重要なコマンドの一覧です。用途
-
Redisでキーに文字列値を設定する方法を徹底解説 – SET / SETNX / SETEX / PSETEX コマンドの使い方
このチュートリアルでは、Redisのデータストア上で指定したキーに文字列値を設定する方法について、SET、SETNX、SETEX、PSETEX の4つのコマンドを使って詳しく解説します。それぞれのコマンドの動作の違いや使い分けのポイントもあわせて紹介するので、Redisの文字列操作をマスターしたい方はぜひ参考にしてください。 SETコマンドとは SETコマンドは、指定したキーに文字列値を設定するための最も基本的なコマンドです。キーがすでに存在する場合は、その型に関係なく値が上書きされます。また、キーに設定されていた以前の有効期限(TTL)も削除される点に注意が必要です。 SETコマンドのオプシ