`
gitzhangyl
  • 浏览: 19679 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Redis命令-有序集合-zrange

阅读更多

 

原文

http://redis.io/commands/zrange

 

简介

Return a range of members in a sorted set, by index.

 

根据索引,返回有序集合中一定范围内的成员。

 

语法

ZRANGE key start stop [WITHSCORES]

 

版本

Available since 1.2.0.

 

自1.2.0版本可用。

 

时间复杂度

Time complexity: O(log(N)+M) with N being the number of elements in the sorted set and M the number of elements returned.

 

O(log(N)+M):N是有序集合中元素的数量,M是返回的元素的数量。

 

描述

Returns the specified range of elements in the sorted set stored at key. The elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score.

 

返回有序集合中指定范围内的元素。元素被认为是按照分数由低到高排序的。词典排序用于分数相等的元素。

 

See ZREVRANGE when you need the elements ordered from highest to lowest score (and descending lexicographical order for elements with equal score).

 

当你需要元素按照分数由高到低排序时,使用ZREVRANGE命令。

 

Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on.

 

start和stop都是基于0的索引,0表示第一个元素,1表示第二个元素,依此类推。索引也可以是负数,表示从有序集合尾部开始的偏移,-1表示倒数第一个元素,-2表示倒数第二个元素,依此类推。

 

start and stop are inclusive ranges, so for example ZRANGE myzset 0 1 will return both the first and the second element of the sorted set.

 

start和stop都是包括在内的,例如ZRANGE myzset 0 1将返回有序集合的第一个和第二个元素。

 

Out of range indexes will not produce an error. If start is larger than the largest index in the sorted set, or start > stop, an empty list is returned. If stop is larger than the end of the sorted set Redis will treat it like it is the last element of the sorted set.

 

超出索引范围不会造成错误。如果start大于有序集中的最大索引值,或者start大于stop,返回空的列表。如果stop大于有序集合的结尾,Redis把它看作是有序集合的最后一个元素。

 

It is possible to pass the WITHSCORES option in order to return the scores of the elements together with the elements. The returned list will contain value1,score1,...,valueN,scoreN instead of value1,...,valueN. Client libraries are free to return a more appropriate data type (suggestion: an array with (value, score) arrays/tuples).

 

为了让元素的分数与元素一起返回,可以传WITHSCORES选项。返回列表包含value1,score1,...,valueN,scoreN,代替value1,...,valueN。客户端库可以返回更加适合的数据类型。

 

返回值

Array reply: list of elements in the specified range (optionally with their scores, in case the WITHSCORES option is given).

 

Array:指定范围内元素的列表(如果指定WITHSCORES选项,包括元素的分数)。

 

例子

redis>  ZADD myzset 1 "one"
(integer) 1
redis>  ZADD myzset 2 "two"
(integer) 1
redis>  ZADD myzset 3 "three"
(integer) 1
redis>  ZRANGE myzset 0 -1
1) "one"
2) "two"
3) "three"
redis>  ZRANGE myzset 2 3
1) "three"
redis>  ZRANGE myzset -2 -1
1) "two"
2) "three"
redis>

 

The following example using WITHSCORES shows how the command returns always an array, but this time, populated with element_1, score_1, element_2, score_2, ..., element_N, score_N.

 

这个命令总是返回一个数组,下面的例子使用WITHSCORES选项,返回值为element_1, score_1, element_2, score_2, ..., element_N, score_N。

 

redis>  ZRANGE myzset 0 1 WITHSCORES
1) "one"
2) "1"
3) "two"
4) "2"
redis>

 

分享到:
评论

相关推荐

    redis-windows-7.2.3.zip

    此外,Redis提供了丰富的操作命令,如GET/SET用于读写字符串,HSET/HGET用于哈希,LPOP/RPOP用于列表,SADD/SREM用于集合,ZADD/ZRANGE用于有序集合。Redis还支持事务(Transactions)、发布/订阅(Pub/Sub)模式、...

    redis-windows-7.2.5.zip

    - ZADD/ZRANGE:处理有序集合,`ZADD zset_key score member`添加带分数的成员,`ZRANGE zset_key start stop [WITHSCORES]`按分数排序获取成员。 4. **持久化** - RDB:定期保存当前数据库状态为一个文件,如`...

    nicolasff-phpredis-2.1.3-167-ga5e53f1.tar.gz

    - 有序集合(Sorted Set):`zAdd`, `zScore`, `zRange` 6. **高级特性** - 事务(Transaction):`multi`, `exec` - 脚本(Lua Scripting):`eval`, `evalsha` - Pub/Sub(发布/订阅):`subscribe`, `publish` - ...

    redis-py-master.zip

    `redis-py`是Python社区广泛使用的Redis客户端,它提供了丰富的API来操作Redis的各种数据结构,如字符串、哈希、列表、集合、有序集合等。以下将详细介绍`redis-py`中的关键概念和用法: 1. **连接Redis服务器**: ...

    linux redis安装(redis-2.6.14.tar.gz)

    此外,Redis还提供了丰富的数据结构操作,如哈希(`HSET`, `HGET`),列表(`LPUSH`, `LPOP`),集合(`SADD`, `SMEMBERS`)和有序集合(`ZADD`, `ZRANGE`)。在生产环境中,你可能还需要关注Redis的主从复制、哨兵...

    常用命令---idea--Linux--redis--dos

    - `ZRANGE zset start stop [WITHSCORES]`:按顺序获取有序集合的部分元素 4. **DOS命令**(在Windows环境下): DOS命令是Windows操作系统早期的命令行工具,虽然现在被PowerShell取代,但一些基本命令仍然适用...

    lua-resty-redis-connector-master

    redis-connector支持多种Redis命令,包括但不限于字符串操作(如GET、SET、INCR等)、哈希表操作(HGETALL、HSET等)、列表操作(LPOP、RPush等)、集合操作(SADD、SMEMBERS等)以及有序集合操作(ZADD、ZRANGE等)...

    Redis--参考资料即总结

    2. **命令操作**:掌握Redis命令,如GET/SET用于字符串操作,HGETALL/HMSET用于哈希,LPOP/RPOP用于列表,SADD/SMEMBERS用于集合,ZADD/ZRANGE用于有序集合。 3. **事务**:了解Redis的简单事务模型,通过MULTI/...

    windows-redis-7.0.0下载

    例如,使用`SET`和`GET`操作字符串,`HSET`和`HGET`处理哈希表,`LPUSH`和`LPOP`管理列表,`SADD`和`SMEMBERS`操作集合,以及`ZADD`和`ZRANGE`处理有序集合。此外,Redis还提供了事务(Transactions)、发布/订阅...

    Redis-x64-window.zip

    - Sorted Set:有序集合,集合基础上增加了分数字段,可以按分数排序。 - Hash:哈希,用于存储键值对,适合表示对象。 6. **Redis操作命令**: - CRUD操作:`SET`, `GET`, `DEL`, `INCR`, `HSET`, `HGET`, `...

    php_redis-2.2.7-5.6

    - 有序集合:`$redis->zAdd('zsetName', 1, 'member')`,`$redis->zRange('zsetName', 0, -1)`等。 - 发布订阅:`$redis->publish('channel', 'message')`,`$redis->subscribe(['channel'])`等。 4. 常见问题及...

    Redis-x64-3.2.100压缩包及使用说明.rar

    - `ZADD zsetname score member`/`ZRANGE zsetname start stop [WITHSCORES]`:处理有序集合。 **解决连接错误:** 1. 检查服务器是否已启动:使用`redis-cli -p 6379 ping`测试连接。 2. 防火墙设置:确保6379端口...

    Redis-x64-3.2.100

    - **有序集合操作**:`ZADD zset score member` 添加成员到有序集合,`ZRANGE zset start stop [WITHSCORES]` 返回有序集合指定范围内的成员。 - **订阅与发布**:`SUBSCRIBE channel` 订阅频道,`PUBLISH channel ...

    phpredis-master.zip php中redis扩展库

    Redis是一种高性能的键值数据库,它提供了丰富的数据结构,如字符串、哈希、列表、集合、有序集合等,适用于缓存、会话管理等多种场景。而PHP的Redis扩展则为开发者提供了方便的接口来操作这些数据结构。 **安装与...

    Redis-win-3.2.100

    每种类型都有相应的命令进行操作,如`SET`、`GET`用于字符串,`HSET`、`HGET`用于哈希,`LPUSH`、`LPOP`用于列表,`SADD`、`SMEMBERS`用于集合,`ZADD`、`ZRANGE`用于有序集合。 8. **持久化**:Redis提供了两种...

    Redis-x64-3.0.501.rar

    此外,Redis还支持复杂的操作,如`LPOP/RPOP`对列表的处理,`SADD/SMEMBERS`对集合的操作,以及`ZADD/ZRANGE`对有序集合的管理。 Redis的缓存特性使其在高并发场景下表现出色,它可以极大地提高读写速度,降低...

    redis-3.0.0.gem

    Redis是一款开源、高性能的键值对存储系统,它支持数据结构如字符串、哈希表、列表、集合和有序集合,广泛应用于缓存、数据库、消息中间件等场景。`redis-3.0.0.gem` 是Ruby语言的Redis客户端库,它允许Ruby开发者...

    redis4.0.1、redis4.0.1-gem、nginx 1.8 、redis 4.0.6压缩包

    例如,`SET`和`GET`用于字符串,`HSET`和`HGET`用于哈希,`LPush`和`RPop`用于列表,`SADD`和`SMEMBERS`用于集合,以及`ZADD`和`ZRANGE`用于有序集合。 3. **主从复制**:为了实现高可用性,Redis支持主从复制。...

    redis-windows-7.0.3.rar

    Redis支持多种数据类型,包括字符串(Strings)、哈希(Hashes)、列表(Lists)、集合(Sets)和有序集合(Sorted Sets)。你可以通过`SET`、`GET`、`HSET`、`HGET`、`LPUSH`、`LPOP`、`SADD`、`SMEMBERS`、`ZADD`和`ZRANGE`...

    phpredis-2.2.4.tar.g

    此外,PHPRedis还提供了丰富的API接口,如`lpush()`、`rpop()`(用于列表)、`hset()`、`hget()`(用于哈希)、`sadd()`、`srem()`(用于集合)、`zadd()`、`zrange()`(用于有序集合),以及`publish()`、`...

Global site tag (gtag.js) - Google Analytics