Redis ZRANGEBYSCORE令
可选参数 LIMIT 指定返回结果的数量及区间(就像SQL中的 SELECT LIMIT offset, count ),注意当 offset 很大时,定位 offset 的操作可能需要遍历整个有序集,此过程最坏复杂度为 O(N) 时间。
可选参数 WITHSCORES 决定结果集是单单返回有序集的成员,还是将有序集成员及其 score 值一起返回。该选项自 Redis 2.0 版本起可用。
无限区间
min 和 max 也可以是 -inf 和 +inf ,这样一来,您就可以在不知道有序集的和最高 score 值的情况下,使用 ZRANGEBYSCORE 令。默认情况下,区间的取值使用闭区间 (小于等于或大于等于),通过给参数前增加
(符号来使用可选的开区间,也就是小于或大于。示例如下:ZRANGEBYSCORE zset (1 10 #表示 1<score<=10
ZRANGEBYSCORE zset (5 (20 #1<score<20
可用版本
ZRANGEBYSCORE 令可用版本:>= 1.2.0
语法
Redis ZRANGEBYSCORE令的基本语法如下:
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
返回值
指定区间内,带有 score 值(可选)的有序集成员的列表。令演示
127.0.0.1:6379> ZADD salary 3000 jack 3500 helen 2880 john 4000 simith 6000 rose
(integer) 5
127.0.0.1:6379> ZRANGE salary 0 4 #浏览所有元素
1) "john"
2) "jack"
3) "helen"
4) "simith"
5) "rose"
127.0.0.1:6379> ZRANGEBYSCORE salary 1000 2500 WITHSCORES limit 1 1 #限制返回元素的数量
(empty list or set)
127.0.0.1:6379> ZRANGEBYSCORE salary 1000 4000 WITHSCORES limit 1 1
1) "jack"
2) "3000"
127.0.0.1:6379> ZRANGEBYSCORE salary 1000 4000 WITHSCORES limit 1 4 #偏移量为1,数量为4
1) "jack"
2) "3000"
3) "helen"
4) "3500"
5) "simith"
6) "4000"
127.0.0.1:6379> ZRANGEBYSCORE salary 1000 (4000 WITHSCORES limit 1 4 #添加( 变为开区间
1) "jack"
2) "3000"
3) "helen"
4) "3500"
- 随机文章
- 饿了么红包怎么用(饿了么红包怎么用微信支付)
- 儿童教育文章(儿童教育)
- 光遇花手先祖位置(安卓光遇手花先祖)
- 广州4a广告公司(广州4a广告公司创意总监年薪)
- 抖音卡(抖音卡顿怎么解决)
- xboxones(xboxone手柄怎么配对主机)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 帆船比赛(帆船比赛视频)
- 海猫鸣泣之时游戏(海猫鸣泣之时游戏在哪玩)
- 韩国媳妇和小雪(韩国媳妇和小雪的父亲工资是多少)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- 和柳亚子(和柳亚子先生于田)
- 冰客(冰客果汁)
- yy魔兽(yy魔兽世界)
- 国外成人游戏(国外成人游戏注册需要visa信用卡)
- 充值卡代理(充值卡代理加盟)
- 拆奶罩
- 郭妮小说(恶魔的法则郭妮小说)
- 东天目山(东天目山景区)
- 蝙蝠给人类的一封信(蝙蝠给人类的一封信)
- 服饰加盟(服饰加盟店招商)
- 疯狂填字(疯狂填字5)
- 点对点短信息(点对点短信息费是什么意思)
- 观音普门品(观音普门品念诵全文)
- 河北省大运会(河北省大运会时间)
- 哈利波特官网(哈利波特官网在哪里)
- 查传倜(查传倜个人生活)
- 钢筋等级符号(钢筋等级符号电脑怎么输入)
