码迷,mamicode.com
首页 > 其他好文 > 详细

redis sorted set

时间:2020-05-27 20:19:33      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:rem   字符串   复杂   区间   小数   lex   下标   range   set   

升序排序,指按score升序排序,score相同,按v字典序升序。降序排序同理。

withscores返回v和score,不使用withscores,只返回v

下标区间 i、j从0开始,可为负数,

值区间min、max可为 -inf和+inf,默认闭区间,

‘(‘表示开区间,如zcount k (1 5 => 1<s<=5,(1 (5 => 1<s<5

 

 

zCard k 返回k的基数

zAdd k s1 v1 s2 v2 将分值为score的元素v添加到k里,v存在则更新score(可为小数)

zIncrBy k c v v的score加c,k或v不存在,相当于zadd k c v

 

zScore k v 返回v的score(字符串形式)

zRank k v 返回v在升序集合k里的排名,从0开始计数

zRevRank k v 返回v在降序集合k里的排名,从0开始计数

 

zRange k i j [withscores] 返回下标在[i,j]里的升序子集

zRevRange k i j [withscores] 返回下标在[i,j]里的降序子集

 

zCount k min max 返回score在[min,max]里的元素数量

zRangeByScore k min max [withscores] [limit offset count]

返回score在[min,max]里的升序子集

zRevRangeByScore k max min [withscores] [limit offset count]

返回score在[max,min]里的降序子集

 

zRem k v1 v2... 移出,返回被移出的数量

zRemRangeByRank k i j 移出下标区间[i,j]内元素,返回移出的数量

zRemRangeByScore k min max 移出值区间[min,max]内元素,返回移出的数量

 

zUnionStore d n k1 [k2.. ] [w1 [w2..]] [sum/min/max]

n个集合k1..kn的并集存到d里,返回d的基数

wi表示集合ki的乘法因子,score会先乘w,再传给聚合函数

聚合函数默认为sum,表示d里的score是ki里相同v的score的和

min、max表示d里的score是ki里相同v的score的最小/大值

zInterStore d n k1 [k2.. ] [w1 [w2..]] [sum/min/max]

交集,返回d的基数

 

所有元素的score都相同:

zRangeByLex k min max [limit offset count]

返回v在区间[min,max]里的子集

zLexCount k min max 返回v在区间[min,max]里的元素数量

zRemRangeByLex 移出v在区间[min,max]里的元素,返回移出的数量

 

 

zAdd、zIncrBy、zCount、zRem、zLexCount

zRank、zRevRank

复杂度 O(lgn)

 

zRange、zRevRange

zRangeByScore、zRevRangeByScore

zRemRangeByRank、zRemRangeByScore

zRangeByLex、zRemRangeByLex

复杂度 O(lgn + m),n为k的基数,m为结果集的基数或被移出/返回的数量

 

zUnionStore

复杂度 O(n) + O(mlgm),n为k1、k2..的基数总和,m为结果集的基数

 

zInterStore

复杂度O(nk) + O(mlgm),n为基数最小的k的基数,k为集合数量,m为结果集的基数

 

redis sorted set

标签:rem   字符串   复杂   区间   小数   lex   下标   range   set   

原文地址:https://www.cnblogs.com/ts65214/p/12975946.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!