Redis有序集合类型
命令
增加元素
ZADD score member [score member ...] > ZADD scoreboard 89 Tom 76 Peter 100 David
(integer 3)
- ZADD 命令用来向有序集合中加入一个元素和该元素的分数,如果该元素已经存在则会用新的分数替换原有的分数。
- ZADD 命令的返回值是新加入到集合中的元素个数
获得元素的分数
ZSCORE key member > ZSCORE scoreboard Tom
"89"
获得排名在某个范围的元素列表
ZRANGE key start stop [WITHSCORES] // 元素分数从小到大 ZREVRANGE key start stop [WITHSCORES] //元素分数从大到小 > ZRANGE scoreboard 0 2
1) "Peter"
2) "Tom"
3) "David"
> ZRANGE scoreboard 0 2 WITHSCORES
1) "Peter"
2) "76
3) "Tom"
4) "89"
5) "David"
6) "100"
获得指定分数范围的元素
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count] > ZRANGEBYSCORE scoreboard 80 100 // 80 <= score <= 100
1) "Tom"
2) "David"
> ZRANGEBYSCORE scoreboard 80 (100 // 80 <= score < 100
1) "Tom"
> ZRANGEBYSCORE scoreboard 80 +inf // 80 <= score
1) "Tom"
增加某个元素的分数
ZINCRBY key increment memeber > ZINCRBY scoreboard 4 Peter
"80"
> ZINCRBY scoreboard -4 Peter
"76"
获得集合中元素的数量
ZCARD key > ZCARD scoreboard
(integer) 3
获得指定分数范围内的元素个数
ZCOUNT key min max > ZCOUNT scoreboard 90 100
(integer) 1
删除一个或多个元素
ZREM key member [member ...] > ZREM scoreboard Jerry
(integer) 1
- 返回值是成功删除的元素数量
按照排名范围删除元素
按照元素分数从小到大的顺序删除(即索引0表示最小的值)删除处于指定排名范围内的所有元素,并返回删除的元素个数
ZREMRANGEBYRANK key start stop > ZADD testRem 1 a 2 b 3 c 4 d 5 e 6 f
(integer) 6
> ZREMRANGEBYRANK testRem 0 2
(integer) 3
> ZRANGE testRem 0 -1
1) "d"
2) "e"
3) "f"
按照分数范围删除元素
ZREMRANGEBYSCORE key mix max > ZREMRANGEBYSCORE key (4 5
(integer) 1
> ZRANGE testRem 0 -1
1) "d"
3) "f"
获得元素的排名
ZRANK key member // 按元素分数从小到大
ZREVRANK key member //按元素分数从大到小 > ZRANK scoreboard Tom
(integer) 0
> ZREVRANK scoreboard Tom
(integer) 1
计算有序集合的交集
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ..]] [AGGREGATE SUM|MIN|MAX]
Redis有序集合类型的更多相关文章
- redis有序集合类型sort set
redis的数据类型之-有序集合 sort set和set类型一样,也是string类型元素的集合,也没有重复的元素,不同的是sort set每个元素都会关联一个权,通过权值可以有序的获取集合中的元素 ...
- redis 有序集合类型
- redis有序集合数据类型---sortedset
一.概述 redis有序集合和集合一样,也是string类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个double类型的分数. redis正式通过分数来为集合中的重圆进行从小到大的 ...
- Redis常用命令入门5:有序集合类型
有序集合类型 上节我们一起学习了集合类型,感受到了redis的强大.现在我们接着学Redis的最后一个类型——有序集合类型. 有序集合类型,大家从名字上应该就可以知道,实际上就是在集合类型上加了个有序 ...
- Redis从基础命令到实战之有序集合类型(SortedSet)
有序集合类型是Redis五种数据类型中最高级的.也是最复杂的类型.有序集合具有集合类型的特性,在其基础上给每个元素关联了一个分值,或称为权重,操作时既可以在添加元素时指定分值,也可以单独修改集合中某一 ...
- 15天玩转redis —— 第六篇 有序集合类型
今天我们说一下Redis中最后一个数据类型 “有序集合类型”,回首之前学过的几个数据结构,不知道你会不会由衷感叹,开源的世界真好,写这 些代码的好心人真的要一生平安哈,不管我们想没想的到的东西,在这个 ...
- Redis自学笔记:3.6入门-有序集合类型
3.6有序集合类型 3.6.1介绍 在集合类型基础上,为集合中每个元素都关联了一个分数,故可以获得 分数最高(最低)的前N个元素,可以获得指定范围内的元素等 有序集合中每个元素不同,但它们的分数却可以 ...
- 第二百九十九节,python操作redis缓存-SortSet有序集合类型,可以理解为有序列表
python操作redis缓存-SortSet有序集合类型,可以理解为有序列表 有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值, ...
- redis:order set有序集合类型的操作(有序集合)
1. order set有序集合类型的操作(有序集合) 有序集合是在无序集合的基础上加了一个排序的依据,这个排序依据叫score,因此声明一个集合为有序集合的时候要加上score(作为排序的依据) 1 ...
随机推荐
- netty(三)---NioEventLoop分析
问题 : NioEventLoop 作用到底是什么?是在哪里用到的? NioEventLoop 和我们开头创建的 ServerBootstrap 和 EventLoopGroup 是什么关系 ? Ni ...
- java linux安装jdk,git, maven
jdk8下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html mkdir ...
- 「CF241E」Flights
传送门 Luogu 解题思路 首先对于所有不属于任何一条路径上的边,它的权值是任意的. 对于所有在路径上的边 \((u,v)\) 满足 \(1\le dis_v-dis_u\le2\) 差分约束即可. ...
- python开发基础作业01:模拟登陆系统
随老男孩学习python mark 作业要求及提示:编写登录接口 ''' 练习程序:编写登录接口 1. 输入用户名和密码 2. 认证成功后显示欢迎信息 3. 输错三次后锁定 输入三次后退出,下次同样用 ...
- VMwarePro密钥
VMware10Pro密钥 5F29M-48312-8ZDF9-A8A5K-2AM0Z VMware12Pro密钥 5A02H-AU243-TZJ49-GTC7K-3C61N VF5XA-FNDDJ- ...
- java 协程
协程是比线程更轻量级的程序处理单元,也可以说是运行在线程上的线程,由自己控制 1.适用于被阻塞的,且需要大量并发的场景. 2.不适用于,大量计算的多线程,遇到此种情况,更好实用线程去解决. 虽然Jav ...
- Emprie 使用基础笔记
0x01 简介 empire 是一个后渗透攻击框架,具有加密通信和灵活框架的功能.Empire可以在不需要Powershell.exe的情况下执行PowerShell代理,后期利用的模块很强大,如sc ...
- HDU1285-确定比赛名次(拓扑+优先队列)
对于拓扑排序,每次能入队的只有入度为0的点,所以用优先队列即可. 以及,第一组数据日常卡OJ,这组数据跳了一个点,我的程序这个版本也过不了(其实写了另一个版的),稍微改改更正确. #include & ...
- CN109241772A发票区块链记录方法、装置、区块链网关服务器和介质(腾讯)
学习笔记-2 CN109241772A发票区块链记录方法.装置.区块链网关服务器和介质(腾讯) 解决什么问题? 让发票信息记录到区块链的情况下减少发票信息泄露 链上有什么数据? 发行发票事件信息(发票 ...
- Babel的安装和使用
安装Node.JS 和 npm,如未安装可参照其他文章 1.创建一个package.json npm init (回车, 一直下一步即可) 安装 Babel npm install --save-de ...