redis之zset命令学习

redis之zset命令学习

zset是一个不包含重复元素的字符串集合,且每个元素都会关联一个 double 类型的分数(score)。这使得有序集合既可以通过成员(member)来查询,也可以通过分数(score)来排序。

以下是zset的一些简单命令

向有序集合中加入一个元素和该元素的分数:

bash 复制代码
127.0.0.1:6379> zadd student 1 zhangsan 2 lisi 3 wangwu      //添加三个元素
(integer) 3

按照元素分数从小到大的顺序返回索引从start到stop之间的所有元素:

bash 复制代码
127.0.0.1:6379> zrange student 0 2     
1) "zhangsan"
2) "lisi"
3) "wangwu"

获取元素的分数:

bash 复制代码
127.0.0.1:6379> zscore student lisi
"2"

删除元素:

bash 复制代码
127.0.0.1:6379> zrem student lisi
(integer) 1

获取指定分数范围的元素:

bash 复制代码
127.0.0.1:6379> zadd student 4 zhaoliu 5 xiaohao 15 xiaohong
(integer) 3
127.0.0.1:6379> zrangebyscore student 1 8
1) "zhangsan"
2) "wangwu"
3) "zhaoliu"
4) "xiaohao"

增加某个元素的分数:

bash 复制代码
127.0.0.1:6379> ZINCRBY student 7 zhaoliu
"11"

获取集合中的元素数量:

bash 复制代码
127.0.0.1:6379> zcard student
(integer) 5

获得指定分数范围内的元素个数:

bash 复制代码
127.0.0.1:6379> zcount student 1 7
(integer) 3

按照排名范围删除元素:

bash 复制代码
127.0.0.1:6379> ZREMRANGEBYRANK student 2 4
(integer) 3
127.0.0.1:6379> zrangebyscore student 1 100
1) "zhangsan"
2) "wangwu"

获取元素的排名:

从小到大:

bash 复制代码
127.0.0.1:6379>  zrangebyscore student 1 100
1) "zhangsan"
2) "wangwu"
3) "wujie"
4) "wuhao"
5) "xinxin"
6) "xiaolong"
127.0.0.1:6379> zrank student wujie
(integer) 2

从大到小:

bash 复制代码
127.0.0.1:6379> zrevrank student wujie
(integer) 3
相关推荐
苜柠几秒前
Wpf学习片段
学习
欢乐熊嵌入式编程35 分钟前
智能手表固件升级 OTA 策略文档初稿
嵌入式硬件·学习·智能手表
起床学FPGA1 小时前
异步FIFO的学习
学习·fpga开发
杨不易呀1 小时前
Java面试高阶篇:Spring Boot+Quarkus+Redis高并发架构设计与性能优化实战
spring boot·redis·高并发·分布式锁·java面试·quarkus
依年南台1 小时前
搭建大数据学习的平台
大数据·学习
阿四啊1 小时前
【Redis实战篇】分布式锁-Redisson
数据库·redis·分布式
小虎卫远程打卡app1 小时前
视频编解码学习10之成像技术原理
学习·计算机视觉·视频编解码
X Y O2 小时前
神经网络初步学习——感知机
人工智能·神经网络·学习·感知机
小王努力学编程2 小时前
高并发内存池(三):TLS无锁访问以及Central Cache结构设计
jvm·数据结构·c++·学习
hnlucky3 小时前
通俗易懂版知识点:Keepalived + LVS + Web + NFS 高可用集群到底是干什么的?
linux·前端·学习·github·web·可用性测试·lvs