Redis常用命令--SortedSet
SortedSet是一个类似于Set的集合数据类型,里面的每个字符串元素都关联到一个score(整数或浮点数),并且总是通过score来进行排序着。
并且可以取得一定范围内的元素。
在Redis中大概有21个用来操作SortedSet的命令。
ZADD key [NX|XX] [CH] [INCR] score member [score member ...]:将一个或多个member元素及其socre值加入到有序集key中。时间复杂度为O(M*log(N)), N 是有序集的基数, M 为成功添加的新成员的数量。
ZCARD key:获取一个排序的集合中的成员数量,时间复杂度O(1)。
ZCOUNT key min max:返回score范围内的成员数量。
ZINCRBY key increment member:为有序集key中的member成员的score增加increment,时间复杂度O(log(N))。
127.0.0.1:6379> zadd za 10 za10
(integer) 1
127.0.0.1:6379> zadd za 20 za20 30 za30 40 za40
(integer) 3
127.0.0.1:6379> zcard za
(integer) 4
127.0.0.1:6379> zcount za 20 40
(integer) 3
127.0.0.1:6379> zincrby za 10 za10
"20"
127.0.0.1:6379>
ZRANK key member:返回成员member在排序集合成员的索引。
ZSCORE key member:返回成员在排序设置相关的score
ZRANGE key start stop [WITHSCORES]:根据指定的index返回,返回sorted set的成员列表。
ZREM key member [member ...]:从排序的集合中删除一个或多个成员
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]:返回有序集合中指定分数区间内的成员,分数由低到高排序。
ZREVRANGE key start stop [WITHSCORES]:在排序的设置返回的成员范围,通过索引,下令从分数高到低
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]:返回有序集合中指定分数区间内的成员,分数由高到低排序。
ZREVRANK key member:确定指数在排序集的成员,下令从分数高到低
ZREMRANGEBYRANK key start stop:在排序设置的所有成员在给定的索引中删除
ZREMRANGEBYSCORE key min max:删除一个排序的设置在给定的分数所有成员
127.0.0.1:6379> zcard za
(integer) 4
127.0.0.1:6379> zrank za za20
(integer) 1
127.0.0.1:6379> zscore za za20
"20"
127.0.0.1:6379> zrange za 2 -1
1) "za30"
2) "za40"
127.0.0.1:6379> zrangebyscore za 20 30
1) "za10"
2) "za20"
3) "za30"
127.0.0.1:6379> zrem za za30
(integer) 1
127.0.0.1:6379> ZREVRANGE za 2 4
1) "za10"
127.0.0.1:6379> ZREVRANGE za 1 3
1) "za20"
2) "za10"
127.0.0.1:6379> zcount za 1 5
(integer) 0
127.0.0.1:6379> zcount za 10 50
(integer) 3
127.0.0.1:6379> zcard za
(integer) 3
127.0.0.1:6379> zrevrank za za20
(integer) 1
127.0.0.1:6379> zremrangebyrank za 1 3
(integer) 2
127.0.0.1:6379> zcard za
(integer) 1
127.0.0.1:6379> zrange za 0 5
1) "za10"
127.0.0.1:6379> zremrangebyscore za 10 20
(integer) 1
127.0.0.1:6379>
ZLEXCOUNT key min max:对于所有score都一样的集合,返回介于min和max之间的成员数量。
ZRANGEBYLEX key min max [LIMIT offset count]:对于所有score都一样的集合,返回指定成员区间内的成员,按字典正序排列, 分数必须相同。
如何指定范围区间:合法的min和max参数必须包含'('或'[','('表示开区间(指定的值不会被包含在范围内)。'['表示闭区间(指定的值会被包围在内)。
特殊值+和-在min和max参数中具有特殊的意义。其中+表示正无限,-表示负无限。
ZREVRANGEBYLEX key max min [LIMIT offset count]:返回指定成员区间内的成员,按字典倒序排列, 分数必须相同。
ZREMRANGEBYLEX key min max:对于一个score都相同的集合key,删除位于min和max之间所有成员。
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]:将多个排序集的交集保存到destination集合中,其中numkeys指定key的数量。新的score是给定集合中成员score的和。
ZUNIONSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]:添加多个排序集和导致排序的设置存储在一个新的关键
ZSCAN key cursor [MATCH pattern] [COUNT count]:迭代sorted sets里面的元素
Redis常用命令--SortedSet的更多相关文章
- Redis常用命令
Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis redis常用命令及内存分析总结(附RedisClient工具简介
redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...
- Redis常用命令与高级应用
附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...
- Redis快速起步及Redis常用命令大全
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- redis配置密码 redis常用命令
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy #requi ...
- redis常用命令及持久化机制
redis 常用命令 查找redis服务文件 find / -name redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...
- Redis 常用命令 大全
Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...
随机推荐
- React Native 轻松集成统计功能(Android 篇)
关于推送的集成请参考这篇文章,本篇文章将引导你集成统计功能,只需要简单的三个步骤就可以集成统计功能. 第一步 安装 在你的项目路径下执行命令: npm install janalytics-react ...
- B-day7
1.昨天的困难,今天解决的进度,以及明天要做的事情 昨天的困难:美化了登录页面,对导入导出的bug进行相关修改,对用户编辑页面进行相关美化,对第三方逻辑进行相应调整. 今天解决的进度:解决了导入和导出 ...
- win7 Anaconda 安装 scrapy模块
之前用了很多方法,都安装不成功,今天终于成功了..说下方法.. anaconda的清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ ...
- django BBS
https://github.com/triaquae/py_training/tree/master/OldboyBBS2 http://www.cnblogs.com/zhming26/p/592 ...
- MySQL 服务安装及命令使用
MySQL 服务安装及命令使用 课程来源说明 本节实验后续至第17节实验为本课程的进阶篇,都基于 MySQL 官方参考手册制作,并根据实验楼环境进行测试调整改编.在此感谢 MySQL 的开发者,官方文 ...
- Jmeter读取文件中的值《一》
此篇主要是对应上一章节的呼应,上一篇中讲到将返回值写入文件,这个值如果在下一个接口中用到, 那么我们需要去从文件中读取数据,这是我们该如何操作? 一.测试计划中添加CSV Data Set Confi ...
- 不看就亏了:DELL EqualLogic PS6100详解及数据恢办法
DELL EqualLogic PS6100采用虚拟ISCSI SAN阵列,为远程或分支办公室.部门和中小企业存储部署带来企业级功能.智能化.自动化和可靠性,支持VMware.Solaris.Linu ...
- nyoj VF
VF 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 Vasya is the beginning mathematician. He decided to make ...
- JQ 上传文件(单个,多个,分片)
最原始的方式: 前端代码: <div> <span>最原始的方式</span><br /> <span>条件1:必须是 post 方式< ...
- Spring知识点回顾(05)bean的初始化和销毁
Java配置方式:@Bean @InitMethod @destroyMethod xml配置方式:init-method,destroy-method 注解方式:@PostConstruct,@Pr ...