• 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大小从低到高

    zrange可以执行不同类型的范围查询或区间查询,例如 通过 排名、分值、字典顺序

    ZRANGE key start stop [BYSCORE | BYLEX] [REV] [LIMIT offset count] [WITHSCORES]

    zrange默认顺序是按照分数从低到高进行排列,如果分数相同则按照字典序进行排列。

    如果没有参数的话,是按照数组的索引来进行提取各个元素。

    如果是BYSCORE,是按照分数的范围来进行提取各个元素。

    如果是BYLEX,是按照各元素的字典序进行提取各个元素,这种一般分值均为0

    rev参数是代表逆序。

    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. # 1. zadd : 添加一个元素或多个元素到有序集合中,格式为: zadd key score value
    2. 127.0.0.1:6379> zadd myzset1 10 gitee 20 github 30 csdn 40 stackoverflow 50 juejin 60 google 70 oschina
    3. 7
    4. # 2. zcard : 获取有序集合中元素的数量
    5. 127.0.0.1:6379> zcard myzset1
    6. 7
    7. # 3. zrem : 从有序集合中删除给定的成员,并返回被删除成员的数量
    8. 127.0.0.1:6379> zrem myzset1 gitee
    9. 1
    10. # 4. zincrby : 给有序集合中的某个元素的分值加上increment
    11. # 格式为: zincrby key increment value
    12. 127.0.0.1:6379> zincrby myzset1 5 github
    13. 25
    14. # 5. zrank : 返回有序集合中指定元素的名次,按分值score的大小从低到高进行排序即正序,返回元素的索引值(0, n-1)
    15. 127.0.0.1:6379> zrank myzset1 github
    16. 0
    17. 127.0.0.1:6379> zrank myzset1 csdn
    18. 1
    19. 127.0.0.1:6379> zrank myzset1 stackoverflow
    20. 2
    21. 127.0.0.1:6379> zrank myzset1 juejin
    22. 3
    23. 127.0.0.1:6379> zrank myzset1 google
    24. 4
    25. 127.0.0.1:6379> zrank myzset1 oschina
    26. 5
    27. # 6. zrevrank : 返回有序集合中指定元素的名次,按分值score的大小从高到低进行排序即逆序,返回元素的索引值(0, n-1)
    28. 127.0.0.1:6379> zrevrank myzset1 github
    29. 5
    30. 127.0.0.1:6379> zrevrank myzset1 csdn
    31. 4
    32. 127.0.0.1:6379> zrevrank myzset1 stackoverflow
    33. 3
    34. 127.0.0.1:6379> zrevrank myzset1 juejin
    35. 2
    36. 127.0.0.1:6379> zrevrank myzset1 google
    37. 1
    38. 127.0.0.1:6379> zrevrank myzset1 oschina
    39. 0
    40. # 7. zscore : 返回某个元素的分值
    41. 127.0.0.1:6379> zscore myzset1 github
    42. 25
    43. # 8. zcount : 在有序集合中指定区间分数的元素数,左闭右闭,结果是一个数字,并没有列出来具体是哪个value
    44. # 注意这里给定的范围是分数score , 并不是名次rank
    45. 127.0.0.1:6379> zcount myzset1 20 30
    46. 2
    47. # 9. zrange : 返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从低到高
    48. 127.0.0.1:6379> zrange myzset1 0 -1
    49. github
    50. csdn
    51. stackoverflow
    52. juejin
    53. google
    54. oschina
    55. 127.0.0.1:6379> zrange myzset1 0 -1 withscores
    56. github
    57. 25
    58. csdn
    59. 30
    60. stackoverflow
    61. 40
    62. juejin
    63. 50
    64. google
    65. 60
    66. oschina
    67. 70
    68. 127.0.0.1:6379> zrange myzset1 0 2
    69. github
    70. csdn
    71. stackoverflow
    72. # 10. zrevrange : 返回有序集合中排名介于min和max之间的成员,左闭右闭,如果给定withscores选项,并将此成员的分值一并返回,排名是按照score大小从高到低
    73. 127.0.0.1:6379> zrevrange myzset1 0 -1
    74. oschina
    75. google
    76. juejin
    77. stackoverflow
    78. csdn
    79. github
    80. 127.0.0.1:6379> zrevrange myzset1 0 -1 withscores
    81. oschina
    82. 70
    83. google
    84. 60
    85. juejin
    86. 50
    87. stackoverflow
    88. 40
    89. csdn
    90. 30
    91. github
    92. 25
    93. 127.0.0.1:6379> zrevrange myzset1 0 2
    94. oschina
    95. google
    96. juejin
    97. # 11. 返回有序集合中分值score在min和max之间的所有元素,格式为: zrangebyscore key min max
    98. 127.0.0.1:6379> zrangebyscore myzset1 20 30
    99. github
    100. csdn
    101. # 12. 返回有序集合中分值score在max和min之间的所有元素,这个命令和上一个命令相似,只是顺序不同
    102. # 格式为: zrevrangebyscore key max min
    103. 127.0.0.1:6379> zrevrangebyscore myzset1 30 20
    104. csdn
    105. github
    106. # 13. zremrangebyrank : 删除有序集合中排名介于min和max之间的元素,是按照正序来进行删除的。
    107. 127.0.0.1:6379> zremrangebyrank myzset1 0 1
    108. 2
    109. 127.0.0.1:6379> zrange myzset1 0 -1
    110. stackoverflow
    111. juejin
    112. google
    113. oschina
    114. 127.0.0.1:6379> zrange myzset1 0 -1 withscores
    115. stackoverflow
    116. 40
    117. juejin
    118. 50
    119. google
    120. 60
    121. oschina
    122. 70
    123. # 14. zremrangebyscore : 删除有序集合中分值score介于min和max之间的元素
    124. 127.0.0.1:6379> zremrangebyscore myzset1 40 50
    125. 2
    126. 127.0.0.1:6379> zrange myzset1 0 -1 withscores
    127. google
    128. 60
    129. oschina
    130. 70
    131. # 15. zinterstore  : 对给定的有序集合进行交集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max 格式为: zinterstore destination numkeys key1 key2 ...keyn weights weight1 weight2 ...weightn aggregate sum|min|max
    132. 其中系数weight默认为1,如果为其他值,则对score进行乘法
    133. 127.0.0.1:6379> zrange myzset1 0 -1 withscores
    134. google
    135. 60
    136. oschina
    137. 70
    138. 127.0.0.1:6379> zrange myzset2 0 -1 withscores
    139. gitee
    140. 10
    141. github
    142. 20
    143. csdn
    144. 30
    145. stackoverflow
    146. 40
    147. juejin
    148. 50
    149. google
    150. 55
    151. oschina
    152. 75
    153. 127.0.0.1:6379> zinterstore myzsetsum 2 myzset1 myzset2 aggregate sum
    154. 2
    155. 127.0.0.1:6379> zrange myzsetsum 0 -1 withscores
    156. google
    157. 115
    158. oschina
    159. 145
    160. 127.0.0.1:6379> zinterstore myzsetmin 2 myzset1 myzset2 aggregate min
    161. 2
    162. 127.0.0.1:6379> zrange myzsetmin 0 -1 withscores
    163. google
    164. 55
    165. oschina
    166. 70
    167. 127.0.0.1:6379> zinterstore myzsetmax 2 myzset1 myzset2 aggregate max
    168. 2
    169. 127.0.0.1:6379> zrange myzsetmax 0 -1 withscores
    170. google
    171. 60
    172. oschina
    173. 75
    174. # 16. zunionstore :对给定的有序集合进行并集操作,默认的聚集函数是sum,一共有三种剩余两种是min和max , 格式为: zunionstore destination numkeys key1 key2 ...keyn weights weight1 weight2 ...weightn aggregate sum|min|max
    175. 其中系数weight默认为1,如果为其他值,则对score进行乘法
    176. 127.0.0.1:6379> zunionstore myzsetunionsum 2 myzset1 myzset2 aggregate sum
    177. 7
    178. 127.0.0.1:6379> zunionstore myzsetunionmin 2 myzset1 myzset2 aggregate min
    179. 7
    180. 127.0.0.1:6379> zunionstore myzsetunionmax 2 myzset1 myzset2 aggregate max
    181. 7
    182. 127.0.0.1:6379> zrange myzsetunionsum 0 -1 withscores
    183. gitee
    184. 10
    185. github
    186. 20
    187. csdn
    188. 30
    189. stackoverflow
    190. 40
    191. juejin
    192. 50
    193. google
    194. 115
    195. oschina
    196. 145
    197. 127.0.0.1:6379> zrange myzsetunionmin 0 -1 withscores
    198. gitee
    199. 10
    200. github
    201. 20
    202. csdn
    203. 30
    204. stackoverflow
    205. 40
    206. juejin
    207. 50
    208. google
    209. 55
    210. oschina
    211. 70
    212. 127.0.0.1:6379> zrange myzsetunionmax 0 -1 withscores
    213. gitee
    214. 10
    215. github
    216. 20
    217. csdn
    218. 30
    219. stackoverflow
    220. 40
    221. juejin
    222. 50
    223. google
    224. 60
    225. oschina
    226. 75

  • 相关阅读:
    python 国内镜像源(比较全)
    JavaScript对象和函数——JavaScript筑基
    集合导题、刷题、考试全套完整流程,专业强大的功能,提高刷题学习效率和企业的培训效率
    【LeetCode】缺失的第一个正数 [H](双指针)
    你是否了解Spring @EventListener注解?
    中文版-Chat GPT-4.0可用,功能更强大!(附网址)
    分布式概念:编码一个简单分布式系统
    申请MIMIC数据库失败怎么办?从失败到成功的经验分享给你~
    最新Sora人工智能视频资源网址分享
    深入探讨进程间通信的重要性:理解不同的通信机制(下)
  • 原文地址:https://blog.csdn.net/u010566813/article/details/128177297