redis ZRANGEBYSCORE命令


  翻译结果:

range

英 [reɪndʒ]   美 [rendʒ]  

n.范围;射程;类别;(山脉,房屋等的)排列

vi.搜索;变化;延伸;漫游

vt.排列;(按一定位置或顺序)排序;把…分类;徘徊

adj.牧场的,放牧区的

第三人称单数: ranges 复数: ranges 现在分词: ranging 过去式: ranged 过去分词: ranged

by

英 [baɪ]   美 [baɪ]  

prep.在…旁边;表示方式;由于;经过

adv.经过;表示保留或保存时用;短暂拜访

score

英 [skɔ:(r)]   美 [skɔr, skor]  

n.得分;分数;总谱;20个

v.评分;得分;记分;获得胜利

第三人称单数: scores 复数: scores 现在分词: scoring 过去式: scored 过去分词: scored

redis ZRANGEBYSCORE命令 语法

作用:返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。

语法:ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]

说明:具有相同 score 值的成员按字典序(lexicographical order)来排列(该属性是有序集提供的,不需要额外的计算)。可选的 LIMIT 参数指定返回结果的数量及区间(就像SQL中的 SELECT LIMIT offset, count ),注意当 offset 很大时,定位 offset 的操作可能需要遍历整个有序集,此过程最坏复杂度为 O(N) 时间。可选的 WITHSCORES 参数决定结果集是单单返回有序集的成员,还是将有序集成员及其 score 值一起返回。

该选项自 Redis 2.0 版本起可用。

可用版本:>= 1.0.5

时间复杂度:O(log(N)+M), N 为有序集的基数, M 为被结果集的基数。

返回:指定区间内,带有 score 值(可选)的有序集成员的列表。

redis ZRANGEBYSCORE命令 示例

redis> ZADD salary 2500 jack                        # 测试数据
(integer) 0
redis> ZADD salary 5000 tom
(integer) 0
redis> ZADD salary 12000 peter
(integer) 0
redis> ZRANGEBYSCORE salary -inf +inf               # 显示整个有序集
1) "jack"
2) "tom"
3) "peter"
redis> ZRANGEBYSCORE salary -inf +inf WITHSCORES    # 显示整个有序集及成员的 score 值
1) "jack"
2) "2500"
3) "tom"
4) "5000"
5) "peter"
6) "12000"
redis> ZRANGEBYSCORE salary -inf 5000 WITHSCORES    # 显示工资 <=5000 的所有成员
1) "jack"
2) "2500"
3) "tom"
4) "5000"
redis> ZRANGEBYSCORE salary (5000 400000            # 显示工资大于 5000 小于等于 400000 的成员
1) "peter"

热门推荐

目录

首页

视频

问答