Redis Zinterstore コマンド
Redis Zinterstore は複数のソート済みセットの共通部分を計算し、結果を新しいソート済みセットに保存するために使用されます。
Zinterstore コマンドは、ソート済みセットに対して集合演算(例えば共通部分の計算)を行う必要がある場合に非常に便利です。
デフォルトでは、結果セット内のメンバーのスコア値は、指定されたすべてのセットにおけるそのメンバーのスコア値の合計です。
構文
redis Zinterstore コマンドの基本的な構文は次のとおりです:
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE sum|min|max]
destination:結果のソート済みセットの名前。numkeys:共通部分を計算するソート済みセットの数。key:計算に参加するソート済みセットの名前。WEIGHTS weight [weight ...]:各ソート済みセットの重みを指定します。デフォルトの重みは 1 です。AGGREGATE sum|min|max:共通部分の結果の集約方法を指定します。デフォルトはsum(合計)です。
利用可能なバージョン
>= 2.0.0
戻り値
ターゲットの結果セットに保存されたメンバーの数。
例
# 有序集 mid_test redis 127.0.0.1:6379> ZADD mid_test 70 "Li Lei" (integer) 1 redis 127.0.0.1:6379> ZADD mid_test 70 "Han Meimei" (integer) 1 redis 127.0.0.1:6379> ZADD mid_test 99.5 "Tom" (integer) 1 # 另一个有序集 fin_test redis 127.0.0.1:6379> ZADD fin_test 88 "Li Lei" (integer) 1 redis 127.0.0.1:6379> ZADD fin_test 75 "Han Meimei" (integer) 1 redis 127.0.0.1:6379> ZADD fin_test 99.5 "Tom" (integer) 1 # 交集 redis 127.0.0.1:6379> ZINTERSTORE sum_point 2 mid_test fin_test (integer) 3 # 显示有序集内所有成员及其分数值 redis 127.0.0.1:6379> ZRANGE sum_point 0 -1 WITHSCORES 1) "Han Meimei" 2) "145" 3) "Li Lei" 4) "158" 5) "Tom" 6) "199"
その他の拡張
