Zinterstore 命令
生活随笔
收集整理的這篇文章主要介紹了
Zinterstore 命令
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
先來看一下這個命令的定義:
Redis Zinterstore 命令計算給定的一個或多個有序集的交集,其中給定 key 的數量必須以 numkeys 參數指定,并將該交集(結果集)儲存到 destination 。
默認情況下,結果集中某個成員的分數值是所有給定集下該成員分數值之和。
?
語法
redis Zinterstore 命令基本語法如下:
redis 127.0.0.1:6379> ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]
?
?
用大白話解釋的話就是,首先這個命令是用來合并多個(也可以是兩個)集合中共同擁有的key的值用的.
?
實例:
#創建一個數學成績的有序集合,有三個學生 張三、李四、王五 127.0.0.1:6379> zadd math_score 50 'zhang san' 95 'lisi' 78 'wangwu' (integer) 3 #按照升序查看結果集 127.0.0.1:6379> zrangebyscore math_score 0 100 withscores 1) "zhang san" 2) "50" 3) "wangwu" 4) "78" 5) "lisi" 6) "95" #創建一個英語成績的有序集合,里面有四個學生 張三、李四、王五、朱六 127.0.0.1:6379> zadd english_score 90 'zhang san' 50 'zhu liu' 75 'lisi' 80 'wangwu' (integer) 4 #按照升序查看結果集 127.0.0.1:6379> zrangebyscore english_score 0 100 1) "zhu liu" 2) "lisi" 3) "wangwu" 4) "zhang san" #如果加了 withscores 結果集里面會出現成績 127.0.0.1:6379> zrangebyscore english_score 0 100 withscores 1) "zhu liu" 2) "50" 3) "lisi" 4) "75" 5) "wangwu" 6) "80" 7) "zhang san" 8) "90" #現在我們想查看兩門功課學生的總分排序,結果保存在新的集合sum_score中, sum_score 后面的數字2 代表要合并幾個集合,我們合并兩個就寫2. 127.0.0.1:6379> zinterstore sum_score 2 math_score english_score (integer) 3 #查看合并后的結果,我們發現并沒有 朱六的成績,因為朱六的信息只存在于 english_score中,Zinterstore 命令計算給定的一個或多個有序集的交集, 也就是集合中共同有有的值才會合并到新的結果集中. 127.0.0.1:6379> zrangebyscore sum_score 0 300 withscores 1) "zhang san" 2) "140" 3) "wangwu" 4) "158" 5) "lisi" 6) "170"?
轉載于:https://www.cnblogs.com/xisuo/p/9239459.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Zinterstore 命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jquery日历编写小练习
- 下一篇: 输出到Excel