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
相关推荐
我们从未走散19 分钟前
设计模式学习笔记-----单例模式
java·笔记·学习·单例模式·设计模式
菜鸟康41 分钟前
Redis7学习--事务
redis
宇寒风暖5 小时前
@(AJAX)
前端·javascript·笔记·学习·ajax
菜菜子爱学习9 小时前
Nginx学习笔记(八)—— Nginx缓存集成
笔记·学习·nginx·缓存·运维开发
chillxiaohan10 小时前
GO学习记录五——数据库表的增删改查
数据库·学习·golang
憨憨の大鸭鸭11 小时前
python爬虫学习(2)
爬虫·学习
_hermit:14 小时前
【从零开始java学习|第六篇】运算符的使用与注意事项
java·学习
Warren9814 小时前
MySQL,Redis重点面试题
java·数据库·spring boot·redis·mysql·spring·蓝桥杯
rannn_11115 小时前
【Linux学习|黑马笔记|Day4】IP地址、主机名、网络请求、下载、端口、进程管理、主机状态监控、环境变量、文件的上传和下载、压缩和解压
linux·笔记·后端·学习
Moonnnn.16 小时前
【51单片机学习】定时器、串口、LED点阵屏、DS1302实时时钟、蜂鸣器
笔记·单片机·学习·51单片机