Redis有序集合Sorted set操作

 Sorted set全部命令如下:
zadd key score1 member1 score2 member2 ...                      # 将一个或多个member元素及其score值加入到有序集合key当中
zcard key                                                       # 返回有序集合key中成员的数量
zcount key min max                                              # 返回有序集合key中score值在min和max之间的成员的数量
zincrby key increment member                                    # 为有序集合key的成员member的score值加上增量increment,即score=score+increment
zrange key start stop [WITHSCORES]                              # 返回有序集合key中start和stop之间的成员(score递增),WITHSCORES参数让成员和它的score值一并返回
zrevrange key start stop [WITHSCORES]                           # 返回有序集合key中start和stop之间的成员(score递减),WITHSCORES参数让成员和它的score值一并返回
zrangebyscore key min max [WITHSCORES] [LIMIT offset count]     # 返回有序集合key中所有score值介于min和max之间(包括等于min或max)的成员(score递增),LIMIT参数指定返回结果的数量及区间
zrevrangebyscore key min max [WITHSCORES] [limit offset count]  # 返回有序集合key中所有score值介于min和max之间(包括等于min或max)的成员(score递减),LIMIT参数指定范湖结果的数量及区间
zrank key member                                                # 返回有序集合key中成员member的排名。其中有序集合成员按score值递增排序
zrevrank key member                                             # 返回有序集合key中成员member的排名。其中有序集合成员按score值递减排序
zrem key member1 member2 ...                                    # 移除有序集合key中的一个或多个member成员,不存在的成员将被忽略
zremrangebyrank key start stop                                  # 移除有序集合key中,start合stop排名区间内(含start和stop)的所有成员
zremrangebyscore key min max                                    # 移除有序集合key中,score值介于min和max之间(包括等于min或max)的所有成员
zscore                                                          # 返回有序集合key中,成员member和score值
ZSCAN key cursor [MATCH pattern] [COUNT count]                  # 迭代有序集合key中的元素,cursor为迭代过程中的游标,每次迭代返回元素数量的最大值count,过滤出pattern模式相匹配的元素
zunionstore destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]   # 计算给定的一个或多个有序集的并集,其中给定key的数量必须以numkeys参数指定,并将该并集储存到destination
zinterstore destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]   # 计算给定的一个或多个有序集的交集,其中给定key的数量必须以numkeys参数指定,并将该交集储存到destination

原文地址:https://www.cnblogs.com/delav/p/9322702.html

时间: 2024-11-02 01:13:45

Redis有序集合Sorted set操作的相关文章

Redis 有序集合(sorted set)

Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数.redis正是通过分数来为集合中的成员进行从小到大的排序. 有序集合的成员是唯一的,但分数(score)却可以重复. 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1). 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员). 实例 redis 127.0.0.1:6379> ZADD w3ckey 1 r

python 操作redis有序集合(sorted set)

#coding:utf8 import redis r =redis.Redis(host="23.226.74.190",port=63279,password="66666666666") 1.Zadd 命令用于将一个或多个成员元素及其分数值加入到有序集当中.如果某个成员已经是有序集的成员,那么更新这个成员的分数值,并通过重新插入这个成员元素,来保证该成员在正确的位置上.分数值可以是整数值或双精度浮点数.如果有序集合 key 不存在,则创建一个空的有序集并执行

redis 有序集合(zset)函数

redis 有序集合(zset)函数 zAdd 命令/方法/函数 Adds the specified member with a given score to the sorted set stored at key. 增加一个或多个元素,如果该元素已经存在,更新它的socre值 虽然有序集合有序,但它也是集合,不能重复元素,添加重复元素只会 更新原有元素的score值 Parameters key score : double value: string Return value Long

Redis数据类型:Sorted Sets操作指令

Redis数据类型:Sorted Sets操作指令 Sorted Sets常用操作指令 Sorted Sets,本质是一个有序的Sets,其实在原来的Sets集合中对每一个元素新增了一个属性Score,用于排序. ZADD 将指定的元素及Score添加到集合.如果集合中存在该元素,则更新其Score. 如果集合不存在,会先创建一个集合然后在添加元素及Score. 127.0.0.1:6379> ZADD sortset 1 name (integer) 1 ZRANGE 返回指定下标开始到结束下

利用Redis有序集合开发普适的排行榜功能

作者:zhanhailiang 日期:2014-12-02 本文将讲解如何基本Redis Sorted Set实现排行榜功能? 首先,请参见Redis数据类型:http://redis.cn/topics/data-types.html 如上所见,Redis有序集合非常适用于有序不重复数据的存储,例如游戏开发中无处不在的排行榜,如等级排行榜,经验排行榜,积分排行榜,历史筹码排行榜等.如果沿用传统的方法,一般是通过后端的定时任务去跑数据来生成排行榜数据,这种方法一方面无法满足产品对功能实时性的要求

Redis 有序集合

有序集合? Redis的有序集合中,每个成员有两个属性. 一个是这个成员的名:MEMBER_NAME: 一个是这个成员的值:MEMBER_SCORE. 1.ZADD 命令 用于将带有给定分值的成员添加到有序集合里面. 如果输入的成员存在于该有序集合,并且该成员分值发生变化时,则更新这个分值. 分值可以是整数值或双精度浮点数. 如果指定的有序集合不存在,则创建一个空的有序集合执行ZADD操作. 127.0.0.1:6379> ZADD key [NX|XX] [CH] [INCR] score m

Redis有序集合

Redis有序集合类似Redis集合存储在设定值唯一性.不同的是,一个有序集合的每个成员带有分数,用于以便采取有序set命令,从最小的到最大的分数有关. Redis 有序set添加,删除和测试中的O(1)的存在成员(固定时间,无论里面包含的元素集合的数量).列表的最大长度为232- 1元素(4294967295,超过4十亿每个元素的集合). 例子 redis 127.0.0.1:6379> ZADD tutorials 1 redis (integer) 1 redis 127.0.0.1:63

Redis有序集合数据类型操作命令

sorted sets类型及操作 sorted set是set的一个升级版本,它在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset(有序集合)会自动重新按新的值调整顺序.可以理解为有两列的mysql表,一列存value,一列存顺序.操作中key理解为zset的名字. zset的方法: zadd:向名称为key的zset中添加元素member,score用于排序.如果该元素存在,则更新其顺序 127.0.0.1:6379> zadd myzset 1 o

redis有序集合类型sort set

redis的数据类型之-有序集合 sort set和set类型一样,也是string类型元素的集合,不同的是sort set每个元素都会关联一个权,通过权值可以有序的获取集合中的元素 sort set类型适合场景: 获得排名最前的5个热门帖子信息(通过帖子回复量标识热门帖子),用sql的做法:select  *  from message order by backnum desc limit 5;但是当数据量足够大时,比如有1亿条数据,这一条sql下去就会耗费大量数据库资源,查询速度也很慢,即