当前位置: 首页 > article >正文

Reids中的有序集合Zset

有序集合(ZSet)

文章目录

  • 有序集合(ZSet)
    • 常用命令
      • zadd
      • zrevrange
      • zrange
      • zrangebyscore/zrevrangebyscore
      • zscore
      • zcard
      • zrem
      • zincrby
      • zcount
      • zmpop
      • zrank /zrevrank

常用命令

命令作用
zadd key score member添加元素
zrevrange key start stop [withscores]遍历从大到小元素
zrange key start stop [withscores]遍历从小到大元素
zrangebyscore/zrevrangebyscore key min max [ withscores] [ LIMIT offset count]获取从小到大或者从大到小指定范围的元素
zscore key获取元素分数
zcard key获取集合中元素的数量
zrem key 某个score下对于的value值删除元素
zincrby key increment member增加某个元素的分数
zcount key min max获得指定分数范围内的元素个数
zmpop从键名列表中的第一个非空排序集中弹出一个或者多个元素
zrank key values值获取下标值
zrevrank key values值逆序获得下标

zadd

添加信息

127.0.0.1:6379> 
127.0.0.1:6379> zadd zset1 60 v1 70 v2 80 v3 90 v4 100 v5
(integer) 5

zrevrange

遍历从大到小

127.0.0.1:6379> zrevrange zset1 0 -1 withscores
 1) "v5"
 2) "100"
 3) "v4"
 4) "90"
 5) "v3"
 6) "80"
 7) "v2"
 8) "70"
 9) "v1"
10) "60"

zrange

遍历从小到大

127.0.0.1:6379> zrange zset1 0 -1 withscores
 1) "v1"
 2) "60"
 3) "v2"
 4) "70"
 5) "v3"
 6) "80"
 7) "v4"
 8) "90"
 9) "v5"
10) "100"

zrangebyscore/zrevrangebyscore

获取从小到大或者从大到小指定范围的元素

127.0.0.1:6379> zrange zset1 0 -1 withscores
 1) "v1"
 2) "60"
 3) "v2"
 4) "70"
 5) "v3"
 6) "80"
 7) "v4"
 8) "90"
 9) "v5"
10) "100"
127.0.0.1:6379> zrangebyscore zset1 60 90 
1) "v1"
2) "v2"
3) "v3"
4) "v4"
127.0.0.1:6379> zrangebyscore zset1 60 90 withscores
1) "v1"
2) "60"
3) "v2"
4) "70"
5) "v3"
6) "80"
7) "v4"
8) "90"
127.0.0.1:6379> zrangebyscore zset1 (60 90 withscores
1) "v2"
2) "70"
3) "v3"
4) "80"
5) "v4"
6) "90"
127.0.0.1:6379> zrangebyscore zset1 (60 90 withscores limit 0 2
1) "v2"
2) "70"
3) "v3"
4) "80"

zscore

获取元素的分数

127.0.0.1:6379> zscore zset1 v5
"100"

zcard

获取集合中元素的数量

127.0.0.1:6379> zcard zset1
(integer) 5

zrem

删除元素

127.0.0.1:6379> zrem zset1 v5
(integer) 1

zincrby

增加某个元素的分数

127.0.0.1:6379> zincrby zset1 3 v1
"63"

zcount

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

127.0.0.1:6379> zcount zset1 60 90
(integer) 4

zmpop

从键名列表中的第一个非空排序集中弹出一个或者多个元素

127.0.0.1:6379> zmpop 1 zset1 min count 1
1) "zset1"
2) 1) 1) "v1"
      2) "63"
127.0.0.1:6379> zrevrange zset1 0 -1
1) "v4"
2) "v3"
3) "v2"

zrank /zrevrank

zrank key values值 获取下标值

zrevrank key values值 逆序获得下标

127.0.0.1:6379> zrange zset1 0 -1
1) "v2"
2) "v3"
3) "v4"
127.0.0.1:6379> zrank zset1 v2
(integer) 0
127.0.0.1:6379> zrevrank zset1 v2
(integer) 2

http://www.kler.cn/a/3251.html

相关文章:

  • linux环境变量配置文件区别 /etc/profile和~/.bash_profile
  • 如何建设一个企业级的数据湖
  • ubuntu22安装issac gym记录
  • Transfoemr的解码器(Decoder)与分词技术
  • 壁纸设计过程中如何增加氛围感
  • 乒乓球日常烧拍日记之四海绵支撑
  • 个人时间管理网站—Git项目管理
  • 【C++进阶】C++11(中)左值引用和右值引用
  • 多线程控制讲解与代码实现
  • resnet34 对皮肤病分类(从txt文件读取label)
  • Android 12.0 Settings主页面去掉FocusRecyclerView相关功能
  • [数据结构]二叉树OJ(leetcode)
  • chatGPT测试:angular 8以上,word转pdf的组件生成
  • ajax本地跨域请求以及解决方法
  • 59、C语言程序设计谭浩强第七章
  • 你真的掌握到“优先级队列“的精髓了吗?
  • linux入门---操作体统的概念
  • leetcode.1574 删除最短的子数组使剩余数组有序 - 阿里笔试 双指针 二分
  • 清晰概括:进程与线程间的区别的联系
  • 两种方法教你在postman设置请求里带动态token
  • 入职第一天就被迫离职,找工作多月已读不回,面试拿不到offer我该怎么办?
  • MySQL数据库管理系统安装部署——Linux
  • Java 集合【学习笔记】Java 基础
  • 注意力机制(四):多头注意力
  • 冲击蓝桥杯-并查集,前缀和,字符串
  • Mysql查询优化_单表使用索引及常见索引失效