(PHP)redis Zset(有序集合 sorted set)操作
/**
*
* Zset操作
* sorted set操作
* 有序集合
* sorted set 它在set的基础上增加了一个顺序属性,这一属性在修改添加元素的时候可以指定,每次指定后,zset会自动从新按新的值调整顺序
*
*/
// //将一个或多个元素插入到集合里面,默认从尾部开始插入
// //如果要在头部插入,则找一个元素,在元素后面添加一个你需要插入的元素即可
// $redis->zAdd('sorted1',100,'坑啊',98.999,99,90,90,80,80,60,60,70,70);
// // $redis->zAdd('集合',浮点数(元素),'key',(插入头部的数据),key);
// //返回有序集中指定区间内的成员。成员按分数值递增排序,分数值相同的则按字典序来排序。
// //参数:第四个参数表示是否返回各个元素的分数值,默认为false。
// $redis->zRange('sorted', 0, -1, true);
// //返回有序集中指定区间内的成员。成员按分数值递减排序,分数值相同的则按字典序的倒序来排序。
// $redis->zReverseRange('sorted', 0, -1, true);
// //返回有序集中指定分数区间的成员列表,按分数值递增排序
// $redis->zRangeByScore('sorted', 10, 99);
// //自定义返回的序集返回起始位置及条数
// $redis->zRangeByScore('sorted', 0,90,['limit' =>[0,2]]);
//返回有序集中指定分数区间的成员列表,按分数值递减排序,分数值相同的则按字典序的倒序来排序。注意,区间表示的时候大值在前,小值在后。
// $redis->zRevRangeByScore('sorted', 100, 90);
// //迭代有序集合中的元素。
// //可理解为查找指定的值,将元素修改为float类型
// //返回值:[元素名=>分数值,,..]
// $redis->zscan('sorted', $it, 100, 10);
// //返回指定有序集的元素数量,序集的长度。
// $redis->zCard('sorted');
// //返回有序集中指定分数区间的成员数量。
// $redis->zCount('sorted', 90, 100);
// //返回有序集中指定成员的分数值。若成员不存在则返回false。
// $redis->zScore('sorted', 'math');
// //返回有序集中指定成员元素的大小排名,按分数值递增排序。分数值最小者排名为0。
// $redis->zRank('sorted', 60);
// //返回有序集中指定成员元素的排名,按分数值递减排序。分数值最大者排名为0。
// $redis->zRevRank('sorted', 70);
// //删除有序集中的一个或多个成员,忽略不存在的成员。返回删除的元素个数。
// $redis->zRem('sorted', 'chemistry', 'English');
// //删除有序集中指定排名区间的所有成员,返回删除元素个数
// $redis->zRemRangeByRank('sorted', 0, 2);
// //删除有序集中指定分数值区间的所有成员,返回删除元素的个数
// $redis->zRemRangeByScore('sorted', 80, 90);
// //对有序集中指定成员的分数值增加指定增量值。若为负数则做减法,若有序集不存在则先创建,若有序集中没有对应成员则先添加,最后再操作。
// $redis->zIncrBy('sorted', 2, 'Chinese');
// //计算给定一个或多个有序集的交集,元素相加,并将其存储到目的有序集中
// $redis->zinterstore('zset3',['sorted','sorted1']);
// //计算给定一个或多个有序集的并集,元素相加,并将其存储到目的有序集中
// $redis->zunionstore('zset3',['sorted', 'sorted1']);
(PHP)redis Zset(有序集合 sorted set)操作的更多相关文章
- python 操作redis之——有序集合(sorted set) (七)
#coding:utf8 import redis r =redis.Redis(host=") 1.Zadd 命令用于将一个或多个成员元素及其分数值加入到有序集当中.如果某个成员已经是有序 ...
- (六)Redis有序集合Sorted set操作
Sorted set全部命令如下: zadd key score1 member1 score2 member2 ... # 将一个或多个member元素及其score值加入到有序集合key当中 z ...
- Redis ZSet 有序集合
有序集合类型与集合类型的区别就是他是有序的.有序集合是在集合的基础上为每一个元素关联一个分数,这就让有序集合不仅支持插入,删除,判断元素是否存在等操作外,还支持获取分数最高/最低的前N个元素.有序集合 ...
- Redis 有序集合(sorted set),发布订阅,事务,脚本,连接,服务器(三)
Redis 有序集合(sorted set) Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数.redis正是通过 ...
- 聊聊Mysql索引和redis跳表 ---redis的有序集合zset数据结构底层采用了跳表原理 时间复杂度O(logn)(阿里)
redis使用跳表不用B+数的原因是:redis是内存数据库,而B+树纯粹是为了mysql这种IO数据库准备的.B+树的每个节点的数量都是一个mysql分区页的大小(阿里面试) 还有个几个姊妹篇:介绍 ...
- php使用redis的有序集合zset实现延迟队列
延迟队列就是个带延迟功能的消息队列,相对于普通队列,它可以在指定时间消费掉消息. 延迟队列的应用场景: 1.新用户注册,10分钟后发送邮件或站内信. 2.用户下单后,30分钟未支付,订单自动作废. 我 ...
- redis(十四):Redis 有序集合(sorted set)
Redis 有序集合(sorted set) Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数.redis正是通过 ...
- Redis 有序集合(sorted set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数.redis正是通过分数来为集合中的成员进行从小到大的排序. 有序 ...
- redis:order set有序集合类型的操作(有序集合)
1. order set有序集合类型的操作(有序集合) 有序集合是在无序集合的基础上加了一个排序的依据,这个排序依据叫score,因此声明一个集合为有序集合的时候要加上score(作为排序的依据) 1 ...
随机推荐
- python3 字符串属性(三)
maketrans 和 translate的用法(配合使用) 下面是python的英文用法解释 maketrans(x, y=None, z=None, /) Return a translation ...
- asp.net中关于《%=》《%#》《%》 的用法——(转帖)
1:在.aspx页面,<% %>标签相当于在.cs页面的代码,也就是说你在.cs文件里面怎样写,就可以在.aspx文件里面的<% %>标签里面怎样写. 2:在.aspx页面,& ...
- linux命令学习笔记(40):wc命令
Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. .命令格式: wc [选项]文件... .命令功能: 统计指定文件中的字节数.字数 ...
- Java进阶06 容器
Java中有一些对象被称为容器(container).容器中可以包含多个对象,每个对象称为容器中的一个元素.容器是用对象封装的数据结构(data structure). 充满梦想的容器 不同的数据结构 ...
- Arc077_E Guruguru
传送门 题目大意 有$m$个点编号从小到大按照顺时针编成了一个环,有一枚棋子,每次移动可以选择顺时针移动到下一个或者直接移动到编号为$x$的点,现在有$n-1$次数操作,第$i$次要把棋子从第$A_i ...
- openfire服务器开发环境搭建
2017-07-26 更新:直接获取最新版源码,就不会报错了,而且可支持的插件多,老版本的openfire几乎没有可用的官方插件. 系统及软件环境: MAC OSX EI Capitan 10.11. ...
- tomcat启动加载web项目内存溢出
通过tomcat命令启动tomcat的web项目时,根据项目大小,有可能会报以下两个错误. 在启动时没有错误,但是在访问时会报错: 1. java.lang.OutOfMemoryError: Jav ...
- HDOJ1114(完全背包)
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; const ...
- Spring Boot中使用RabbitMQ
很久没有写Spring Boot的内容了,正好最近在写Spring Cloud Bus的内容,因为内容会有一些相关性,所以先补一篇关于AMQP的整合. Message Broker与AMQP简介 Me ...
- Ubuntu18.04安装Docker, centos7安装Docker
Ubuntu18.04安装Docker 第一种方法从Ubuntu的仓库直接下载安装: 安装比较简单,这种安装的Docker不是最新版本,不过对于学习够用了,依次执行下面命令进行安装. $ sudo a ...