Redis
 Computer >> コンピューター >  >> プログラミング >> Redis

Redisでセットの和集合を求める方法 – SUNION・SUNIONSTOREコマンド徹底解説

このチュートリアルでは、Redisデータストアに保存された2つ以上のセット(Set)値に対して和集合演算を実行する方法を、SUNIONコマンドとSUNIONSTOREコマンドを使って解説します。

セットの和集合とは

集合論において、2つ以上の集合の和集合とは、それぞれの集合に含まれるすべての要素(重複は除く)をまとめて持つ集合のことです。具体例を見てみましょう。

A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8, 9}

A と B の和集合:
A U B = {1, 2, 3, 4, 5, 6, 7, 8, 9}

Redisでセットの和集合を求める方法 – SUNION・SUNIONSTOREコマンド徹底解説

SUNIONコマンドとは

SUNIONコマンドは、指定された2つ以上のセットに対して和集合演算を実行し、その結果を配列として返します。指定したキーのいずれかが存在しない場合、そのキーは空のセットとして扱われます。また、キーが存在するものの、そこに保存されている値がセット型ではない場合はエラーが返されます。RedisのSUNIONコマンドの構文は以下の通りです。

構文

redis host:post> SUNION <keyName 1> <keyName 2> <keyName 3>

戻り値

- 和集合演算の結果得られた要素を含む配列(array)。
- キーが存在するが、保存されている値がセット型でない場合はエラー。

実行例

Redisでセットの和集合を求める方法 – SUNION・SUNIONSTOREコマンド徹底解説

SUNIONSTOREコマンドとは

SUNIONSTOREコマンドは、指定された2つ以上のセットに対して和集合演算を実行し、その結果を新しいセットとして指定したキーに保存します。戻り値としては、保存先のセットに含まれる要素数が整数で返されます。指定したキーのいずれかが存在しない場合は空のセットとして扱われ、キーが存在しても値がセット型でない場合はエラーが返されます。RedisのSUNIONSTOREコマンドの構文は以下の通りです。

構文

redis host:post> SUNIONSTORE <destination keyName> <keyName 1> <keyName 2> <keyName 3>

戻り値

- 保存先のセットに含まれる要素数を表す整数(integer)。
- キーが存在するが、保存されている値がセット型でない場合はエラー。

実行例

Redisでセットの和集合を求める方法 – SUNION・SUNIONSTOREコマンド徹底解説

参考資料

  1. SUNIONコマンド公式ドキュメント
  2. SUNIONSTOREコマンド公式ドキュメント

以上が、Redisデータストアに保存された2つ以上のセット値に対して和集合演算を実行する方法の解説でした。この記事がお役に立てたなら、ぜひコメント欄で感想をお寄せいただき、他の方にもシェアしていただけると嬉しいです。

  1. 【Redis入門】ZRANK・ZREVRANKコマンドでソートセットの要素のランクを取得する方法

    このチュートリアルでは、Redisデータストアに格納されたソートセット(Sorted Set)の値から、特定の要素のランク(順位)を取得する方法を、ZRANKコマンドとZREVRANKコマンドを使って解説します。 ZRANKコマンドとは ZRANKコマンドは、指定したキーに格納されているソートセットの中から、対象メンバーのランクを返すコマンドです。ソートセット内の要素はスコアの昇順で並んでおり、スコアが同じ要素同士は辞書順(レキシコグラフィカル順)の昇順で比較されます。 ランクはゼロベースである点に注意してください。つまり、最もスコアが低いメンバーのランクは「0」となります。 要素がソートセ

  2. Redisでキーに文字列値を設定する方法を徹底解説 – SET / SETNX / SETEX / PSETEX コマンドの使い方

    このチュートリアルでは、Redisのデータストア上で指定したキーに文字列値を設定する方法について、SET、SETNX、SETEX、PSETEX の4つのコマンドを使って詳しく解説します。それぞれのコマンドの動作の違いや使い分けのポイントもあわせて紹介するので、Redisの文字列操作をマスターしたい方はぜひ参考にしてください。 SETコマンドとは SETコマンドは、指定したキーに文字列値を設定するための最も基本的なコマンドです。キーがすでに存在する場合は、その型に関係なく値が上書きされます。また、キーに設定されていた以前の有効期限(TTL)も削除される点に注意が必要です。 SETコマンドのオプシ