Navicatブログ

Redisでのキーの操作 2023年8月7日 Robert Gravelle

Redisは値をキーに関連付けることができるキーバリューストアであるため、リレーショナルデータベースのようなデータ操作言語(DML)やクエリ構文を使用しません。では、Redisでデータの書き込み、読み取り、更新、削除を行うためにはどうすればよいでしょうか?このチュートリアルでは、redis-cliと Navicat for Redis を使用してキーの書き込み、読み取り、更新、削除を行う方法について説明します。

データの読み取り

GETコマンドを使用して、Redisにキーの文字列値を要求できます:

GET key

次に示すのは、Navicat for Redis でキー"auth service"の値を取得する例です:

auth_service (48K)

予想どおり、値 "auth0"が返されます:

GET_command (16K)

ただし、"indiana_jones_episodes"の値を取得しようとすると、"WRONGTYPE Operation against a key holding the wrong kind of value"というエラーが発生します。それは、その値がzsetであるためです。Redisは6つのデータ型をサポートしているため、キーがどの型の値にマップされるかを知っておく必要があります。データ型ごとに、それを取得するコマンドは異なります。

キー値を取得するコマンドは次のとおりです:

  • 値が文字列型の場合 -> GET <key>
  • 値がハッシュ型の場合 -> HGET or HMGET or HGETALL <key>
  • 値がリスト型の場合 -> lrange <key> <start> <end>
  • 値がセット型の場合 -> smembers <key>
  • 値がソートされたセット型の場合 -> ZRANGEBYSCORE <key> <min> <max>
  • 値がストリーム型の場合 -> xread count <count> streams <key> <ID>.

したがって、"indiana_jones_episodes"の値を取得するためには、次のようにZRANGEBYSCOREを使用し、min引数とmax引数を含めます:

ZRANGEBYSCORE_example (26K)

これにより、ソートされたセットの最初の3つの値が返されます。

データの書き込みと更新

Redisでは、SET key Value コマンドは、初期値の設定と更新の両方に機能します。

もちろん、Navicatでは、エディタを使用していつでもキーと値の両方を変更できます:

update_example (54K)

データの削除

Redisでは、DELコマンドを使用して、キーとそれに関連付けられた全ての値を削除できます。その構文は次のとおりです:

DEL key

例えば、次のコマンドは"auth service"キーを削除します:

DEL "auth service"

気をつけてください、Redisは操作の確認を求めません!

Navicatでは、テーブル内でキーを選択し、削除[-]ボタンをクリックすることでキーを削除できます。誤ってクリックしてしまった場合に備えて、削除を続行する前に確認を求めるダイアログが表示されます。

delete_button (60K)

結論

このチュートリアルでは、redis-cliと Navicat for Redis を使用してキーを書き込み、読み取り、更新、削除する方法を学びました。次回は、redis-cliコマンドを使用してデータを操作するためのコマンドと、Navicatを使用して同じことを実行する方法を学びます。

Navicat for Redisを試してみたい場合は、こちら からダウンロードしてください。トライアル版では14日間全ての機能を使用できます。

ブログのアーカイブ
シェア