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

redis我记不住的那些命令(六)

背景:我记不住那么多命令,又是Linux命令,又是Git命令,又是kubernetes的命令,又是maven命令,又是redis命令。所谓好记性不如烂笔头,记下来吧。

一、zset(有序集合)

1. zadd : 添加一个元素或多个元素到有序集合中,格式为: zadd key score value

2. zcard : 获取有序集合中元素的数量

3. zrem : 从有序集合中删除给定的成员,并返回被删除成员的数量

4. zincrby : 给有序集合中的某个元素的分值加上increment

5. zrank : 返回有序集合中指定元素的名次,按分值score的大小从低到高进行排序即正序,返回元素的索引值(0, n-1)

6. zrevrank : 返回有序集合中指定元素的名次,按分值score的大小从高到低进行排序即逆序,返回元素的索引值(0, n-1)

7. zscore : 返回某个元素的分值

8. zcount : 在有序集合中指定区间分数的元素数

9. zrange : 返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从低到高
10. zrevrange :  返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从高到低

11. zrangebyscore : 返回有序集合中分值score在min和max之间的所有元素,格式为: zrangebyscore key min max , 排名是按照score大小从低到高

12 zrevrangebyscore : 返回有序集合中分值score在max和min之间的所有元素,这个命令和上一个命令相似,只是顺序不同,   格式为: zrevrangebyscore key max min

13. zremrangebyrank : 删除有序集合中排名介于min和max之间的元素,是按照正序来进行删除的。

14. zremrangebyscore : 删除有序集合中分值score介于min和max之间的元素,是按照正序来进行删除的。

15. zinter / zinterstore  : 对给定的有序集合进行交集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max   下面以zinterstore为例 格式为: zinterstore destination numkeys key1 key2 ...keyn weights weight1 weight2 ...weightn  aggregate sum|min|max
其中系数weight默认为1,如果为其他值,则对score进行乘法

16. zunion / zunionstore :对给定的有序集合进行并集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max  下面以zunionstore为例 格式为: zunionstore destination numkeys key1 key2 ...keyn weights weight1 weight2 ...weightn aggregate sum|min|max
其中系数weight默认为1,如果为其他值,则对score进行乘法

# 1. zadd : 添加一个元素或多个元素到有序集合中,格式为: zadd key score value
127.0.0.1:6379> zadd myzset1 10 gitee 20 github 30 csdn 40 stackoverflow 50 juejin 60 google 70 oschina
7
# 2. zcard : 获取有序集合中元素的数量
127.0.0.1:6379> zcard myzset1
7
# 3. zrem : 从有序集合中删除给定的成员,并返回被删除成员的数量
127.0.0.1:6379> zrem myzset1 gitee
1

# 4. zincrby : 给有序集合中的某个元素的分值加上increment 
# 格式为: zincrby key increment value
127.0.0.1:6379> zincrby myzset1 5 github
25

# 5. zrank : 返回有序集合中指定元素的名次,按分值score的大小从低到高进行排序即正序,返回元素的索引值(0, n-1)

127.0.0.1:6379> zrank myzset1 github
0
127.0.0.1:6379> zrank myzset1 csdn
1
127.0.0.1:6379> zrank myzset1 stackoverflow
2
127.0.0.1:6379> zrank myzset1 juejin
3
127.0.0.1:6379> zrank myzset1 google
4
127.0.0.1:6379> zrank myzset1 oschina
5

# 6. zrevrank : 返回有序集合中指定元素的名次,按分值score的大小从高到低进行排序即逆序,返回元素的索引值(0, n-1)
127.0.0.1:6379> zrevrank myzset1 github
5
127.0.0.1:6379> zrevrank myzset1 csdn
4
127.0.0.1:6379> zrevrank myzset1 stackoverflow
3
127.0.0.1:6379> zrevrank myzset1 juejin
2
127.0.0.1:6379> zrevrank myzset1 google
1
127.0.0.1:6379> zrevrank myzset1 oschina
0



# 7. zscore : 返回某个元素的分值
127.0.0.1:6379> zscore myzset1 github
25

# 8. zcount : 在有序集合中指定区间分数的元素数,左闭右闭,结果是一个数字,并没有列出来具体是哪个value
# 注意这里给定的范围是分数score , 并不是名次rank
127.0.0.1:6379> zcount myzset1 20 30
2

# 9. zrange : 返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从低到高
127.0.0.1:6379> zrange myzset1 0 -1
github
csdn
stackoverflow
juejin
google
oschina
127.0.0.1:6379> zrange myzset1 0 -1 withscores
github
25
csdn
30
stackoverflow
40
juejin
50
google
60
oschina
70
127.0.0.1:6379> zrange myzset1 0 2
github
csdn
stackoverflow

# 10. zrevrange : 返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从高到低
127.0.0.1:6379> zrevrange myzset1 0 -1
oschina
google
juejin
stackoverflow
csdn
github
127.0.0.1:6379> zrevrange myzset1 0 -1 withscores
oschina
70
google
60
juejin
50
stackoverflow
40
csdn
30
github
25
127.0.0.1:6379> zrevrange myzset1 0 2
oschina
google
juejin

# 11. 返回有序集合中分值score在min和max之间的所有元素,格式为: zrangebyscore key min max
127.0.0.1:6379> zrangebyscore myzset1 20 30
github
csdn

# 12. 返回有序集合中分值score在max和min之间的所有元素,这个命令和上一个命令相似,只是顺序不同
# 格式为: zrevrangebyscore key max min
127.0.0.1:6379> zrevrangebyscore myzset1 30 20
csdn
github 

# 13. zremrangebyrank : 删除有序集合中排名介于min和max之间的元素,是按照正序来进行删除的。
127.0.0.1:6379> zremrangebyrank myzset1 0 1
2
127.0.0.1:6379> zrange myzset1 0 -1
stackoverflow
juejin
google
oschina
127.0.0.1:6379> zrange myzset1 0 -1 withscores
stackoverflow
40
juejin
50
google
60
oschina
70

# 14. zremrangebyscore : 删除有序集合中分值score介于min和max之间的元素
127.0.0.1:6379> zremrangebyscore myzset1 40 50
2
127.0.0.1:6379> zrange myzset1 0 -1 withscores
google
60
oschina
70

# 15. zinterstore  : 对给定的有序集合进行交集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max  格式为: zinterstore destination numkeys key1 key2 ...keyn weights weight1 weight2 ...weightn aggregate sum|min|max
其中系数weight默认为1,如果为其他值,则对score进行乘法

127.0.0.1:6379> zrange myzset1 0 -1 withscores
google
60
oschina
70
127.0.0.1:6379> zrange myzset2 0 -1 withscores
gitee
10
github
20
csdn
30
stackoverflow
40
juejin
50
google
55
oschina
75

127.0.0.1:6379> zinterstore myzsetsum 2 myzset1 myzset2 aggregate sum
2
127.0.0.1:6379> zrange myzsetsum 0 -1 withscores
google
115
oschina
145

127.0.0.1:6379> zinterstore myzsetmin 2 myzset1 myzset2 aggregate min
2
127.0.0.1:6379> zrange myzsetmin 0 -1 withscores
google
55
oschina
70

127.0.0.1:6379> zinterstore myzsetmax 2 myzset1 myzset2 aggregate max
2
127.0.0.1:6379> zrange myzsetmax 0 -1 withscores
google
60
oschina
75

# 16. zunionstore :对给定的有序集合进行并集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max , 格式为: zunionstore destination numkeys key1 key2 ...keyn weights weight1 weight2  ...weightn aggregate sum|min|max
其中系数weight默认为1,如果为其他值,则对score进行乘法
127.0.0.1:6379> zunionstore myzsetunionsum 2 myzset1 myzset2 aggregate sum
7
127.0.0.1:6379> zunionstore myzsetunionmin 2 myzset1 myzset2 aggregate min
7
127.0.0.1:6379> zunionstore myzsetunionmax 2 myzset1 myzset2 aggregate max
7
127.0.0.1:6379> zrange myzsetunionsum 0 -1 withscores
gitee
10
github
20
csdn
30
stackoverflow
40
juejin
50
google
115
oschina
145
127.0.0.1:6379> zrange myzsetunionmin 0 -1 withscores
gitee
10
github
20
csdn
30
stackoverflow
40
juejin
50
google
55
oschina
70
127.0.0.1:6379> zrange myzsetunionmax 0 -1 withscores
gitee
10
github
20
csdn
30
stackoverflow
40
juejin
50
google
60
oschina
75

相关文章:

  • Keka for Mac v1.4.3 中文下载 解压/压缩工具
  • maven项目打成可运行的jar及pom中的依赖一同打包
  • Qt界面假死原因
  • 【前端数据层高可用架构】
  • SQL面试题练习 —— 统计最大连续登录天数区间
  • Android中Context概述
  • vmware中Numlock和caplock一直闪烁(更新时间24/2/28)
  • [LeetCode]143.重排链表
  • 51单片机-(定时/计数器)
  • vue3+electron开发桌面应用,静态资源处理方式及路径问题总结
  • C++ 网络编程学习二
  • C++基础知识(四:类的学习)
  • Spring - @PostConstruct 源码解析
  • JS 正则表达式常用方法
  • 2-分类问题 SVM 核函数
  • [附源码]计算机毕业设计校园订餐管理系统Springboot程序
  • GitLab CI/CD系列教程(一)
  • html当当书网站 html网上在线书城 html在线小说书籍网页 当当书城网页设计
  • [附源码]JAVA毕业设计课程网站设计(系统+LW)
  • Spring Boot TestEntityManager
  • 【@property的参数copy Objective-C语言】
  • 八股文之设计原则
  • C++图书管理系统(管理员-读者)
  • 高可用方案组件,Keepalived详解
  • MOSFET 和 IGBT 栅极驱动器电路的基本原理学习笔记(一)MOSFET技术
  • Ansible
  • 年产2万吨山楂酒工厂的设计-陈酿工段及车间的设计(lunwen+任务书+cad图纸)
  • Java项目:SSM教师师资管理系统
  • wasm 视频解码渲染实现
  • [YOLOv7/YOLOv5系列改进NO.40]融入适配GPU的轻量级 G-GhostNet
  • 华为机试真题 C++ 实现【连接器问题】【2022.11 Q4新题】
  • 50、IO流