绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
redis基本命令及解释(二)
2019-09-11 16:29:13

有序集合

和散列存储着键值对的映射类似,有序集合也存储着成员与分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序地获取或扫描成员的分值的命令。

基础命令

命令用例和描述

ZADDZADD key-name score member [score member ...]——将带有一定分值的成员添加到有序集合里面

ZREMZREM key-name member [member ...]——从有序结合里面移除给定的成员,并返回被移除的成员的数量

ZCARDZCARD key-name——返回有序集合包含的成员数量

ZINCRBYZINCRBY key-name increment member——将member成员的分值加上increment

ZCOUNTZCOUNT key-name min max —— 在min和max之间的成员的数量

ZRANKZRANK key-name member——返回成员member在有序集合中的排名

ZSCOREZSCORE key-name member——返回成员member的分值

ZRANGEZRANGE key-name start stop [WITHSCORES]——返回有序集合中排名介于start和stop之间的成员,如果给定了WITHSCORES选项,那么命令会将成员的分值也一并返回

进阶命令

命令用例和描述

ZREVRANKZREVRANK key-name member——返回有序集合里成员member的排名,成员按照分值从大到小排列

ZREVRANGEZREVRANGE key-name start stop [WITHSCORES]——返回有序集合给定排名范围内的成员,按照分值从大到小排列

ZRANGEBYSCOREZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]——获取有序集合中分值介于min和max之间的所有成员

ZREVRANGEBYSCOREZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]——获取有序集合中分值介于min和max之间的所有成员,并按照分值从大到小的顺序来返回

ZREMRANGEBYRANKZREMRANGEBYRANK key-name start stop——移除有序集合中排名介于start和stop之间的所有成员

ZREMRANGEBYSCOREZREMRANGEBYSCORE key-name min max——移除有序集合中分值介于sart和stop之间的所有成员

ZINTERSTOREZINTERSTORE dest-key key-count key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]——对给定的有序集合执行类似于集合交集运算

ZUNIONSTOREZUNIONSTORE dest-key key-count key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX]——对给定的有序集合执行类似于集合的并集运算

6. 发布与订阅

命令用例和描述

SUBSCRIBESUBSCRIBE channel [channel ...]——订阅给定的一个或多个频道

UNSUBSCRIBEUNSUBSCRIBE [channel [channel ...]]——退订给定的一个或多个频道,如果执行时没有给定任何频道,那么退订所有频道

PUBLISHPUBLISH channel message——向给定频道发送消息

PSUBSCRIBEPSUBSCRIBE pattern [pattern ...]——订阅与给定模式相匹配的所有频道

PUNSUBSCRIBEPUNSUBSCRIBE [pattern [pattern ...]]——退订给定的模式,如果执行时没给定任何模式,那么退订所有模式

7. 基本redis事务

可以让一个客户端在不被其他客户端打断的情况下执行多个命令。和关系型数据库那种可以回滚的事务不同,redis基本事务中的明林归一个接一个的执行,知道所有命令都执行完毕为止。当一个事务执行完毕之后,redis才会处理其他客户端的命令。

redis的基本事务需要用到MULTI和EXEC命令,形式为先执行MULTI命令,然后输入想要在事务里面执行的命令,后再执行EXEC命令。在执行EXEC之前,redis会将所有的命令放在一个队列里面,直到EXEC出现,才会在不被打断的情况下,一个接一个的执行存储在队列里面的命令

8. 用于处理过期时间的redis命令

命令用例和描述

PERSISTPERSIST key-name——移除键的过期时间

TTLTTL key-name——查看给定键距离过期还有多少秒

EXPIREEXPIRE key-name seconds——让给定键在指定的秒数之后过期

EXPIREATEXPIREAT key-name timestamp——将给定键的过期时间和这位给定的UNIX时间戳

PTTLPTTL key-name——查看给定键距离过期时间还有多少毫秒

PEXPIREPEXPIRE key-name milliseconds——指定毫秒数后过期

PEXPIREATPEXPIREAT key-name timestamp-milliseconds——将一个毫秒级精度的UNIX时间超设置为给定键的过期时间

关于redis的基本命令就先介绍到这,之后再月度源码的过程中,如果遇到命令,也会讲解一下,只不过没有这两篇这么系统了,大家见谅~~~

分享好友

分享这个小栈给你的朋友们,一起进步吧。

NoSQL与NewSQL
创建时间:2020-06-17 14:29:11
关注NoSQL与NewSQL,专区一站找到所需资料!
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • 小雨滴
    专家
戳我,来吐槽~