Yii redis zset有序集合的使用

Yii redis zset有序集合的使用和散列存储着键与值之间的映射关系类似,有序集合也存储着成员与分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序地获取(fetch)和扫描(scan)成员和分值的命令。这里介绍一些常用命令,以

Yii redis zset有序集合的使用

 

和散列存储着键与值之间的映射关系类似,有序集合也存储着成员与分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序地获取(fetch)和扫描(scan)成员和分值的命令。这里介绍一些常用命令,以及在 Yii 中的使用。

ZADD

ZADD:ZADD key-name score member [score member …]
将带有给定分值的成员添加到有序集合里面。

ZREM

ZREM:ZREM key-name member [member …]
从有序集合里面移除给定的成员,并返回被移除成员的数量。

ZCARD

ZCARD:ZCARD key-name
返回有序集合包含的成员数量。

ZINCRBY

ZINCRBY:ZINCRBY key-name increment member
将 member 成员的分值加上 increment。

ZCOUNT

ZCOUNT:ZCOUNT key-name min max
返回分值介于 min 和 max 之间的成员数量。

ZRANK

ZRANK:ZRANK key-name member
返回成员 member 在有序集合中的排名。排名从 0 开始。

ZSCORE

ZSCORE:ZSCORE key-name member
返回成员 member 的分值。

ZRANGE

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

ZREVRANK

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

ZREVRANGE

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

ZRANGEBYSCORE

ZRANGEBYSCORE:ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
返回有序集合中,分值介于 min 和 max 之间的所有成员。

ZREVRANGEBYSCORE

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

ZREMRANGEBYRANK

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

ZREMRANGEBYSCORE

ZREMRANGEBYSCORE:ZREMRANGEBYSCORE key-name min max
移除有序集合中分值介于 min 和 max 之间的所有成员。

 

在 Yii 中使用实例:

// 添加3组成员及其分值
Yii::$app->redis->zadd("testZsetKey", 1, "a", 2, "b", 3, "c");  // 3
// 返回成员数量
Yii::$app->redis->zcard("testZsetKey");   // 3
// 将c成员的分值加3
Yii::$app->redis->zincrby("testZsetKey", 3, "c");   // 6
// 返回c成员的分值
Yii::$app->redis->zscore("testZsetKey", "c");   // 6
// 获取c在有序集合中的排名,排名从0开始
Yii::$app->redis->zrank("testZsetKey", "c");   // 2
// 返回分值介于1和6之间的成员数量
Yii::$app->redis->zcount("testZsetKey", 1, 6);   // 3
// 移除成员b
Yii::$app->redis->zrem("testZsetKey", "b");   // 1
// 返回有序集合中所有成员及分值
Yii::$app->redis->zrange("testZsetKey", 0, -1, "WITHSCORES");   // ["a","1","c","6"]

代码100分

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/7453.html

(0)
上一篇 2023-03-20 10:00
下一篇 2023-03-20

相关推荐

  • Mysql相关知识总结-持续更新~~~

    Mysql相关知识总结-持续更新~~~2019-12-11对varchar类型排序问题的解决 在mysql默认order by 只对数字与日期类型可以排序,但对于varchar字符型类型排序好像没有用了,下面我来给各位同学介绍varcha

    2022-12-26
    143
  • 如何配置my.ini文件

    如何配置my.ini文件MySQL是世界上最流行的关系型数据库管理系统之一,其广泛应用于各种大型Web应用和企业应用中。而在使用MySQL时,我们经常需要对my.ini文件进行配置,以达到最佳的性能和安全性。本文将从多个方面详细介绍如何配置my.ini文件。

    2024-06-02
    47
  • 优化字符串处理:Python split使用实例

    优化字符串处理:Python split使用实例在Python中,字符串和列表是两种常用的数据类型,字符串是由字符组成的序列,列表是由元素组成的序列。字符串处理中常用的操作之一是将字符串按照某个分隔符切割成一个列表,Python中提供了一个split()方法来实现这个操作。

    2024-01-30
    105
  • 如何本地navicat连接虚拟机安装的linux 的mysql[通俗易懂]

    如何本地navicat连接虚拟机安装的linux 的mysql[通俗易懂]2022.3.20 如何本地连接虚拟机安装的linux 的mysql 1防火墙开启开启 1.1、开启端口3306 firewall-cmd –zone=public –add-port=3306/

    2023-05-10
    140
  • Python DataFrame遍历

    Python DataFrame遍历在数据分析、挖掘与建模中,DataFrame 是不可或缺的一种数据结构。然而,在进行数据处理时,往往需要对 DataFrame 进行遍历操作。本文将从多个方面介绍 Python 中对 DataFrame 进行遍历的方法。

    2024-07-12
    29
  • Python优化语法:简洁高效的核心关键词

    Python优化语法:简洁高效的核心关键词对于Python工程师来说,一直以来就更加关注代码的简洁性和高效性,这也不无道理,Python以其简洁易懂的语法、高效的运行速度和强大的程序库生态圈著称。而本文就将针对Python中的几个核心关键词,分别为大家详细阐述如何优化自己的代码,更好地利用Python的特性。

    2024-02-18
    96
  • 记录一个超长sql的优化,从4s到0.0015s SELECT[亲测有效]

    记录一个超长sql的优化,从4s到0.0015s SELECT[亲测有效]废话不多说,直入正题,先来看看我所说的超长sql: SELECT my.id, my.date, my.business_date AS businessDate, my.CODE, my.cust…

    2023-02-21
    118
  • 大数据hadoop入门教程_大数据集成的基本原理

    大数据hadoop入门教程_大数据集成的基本原理一、Hadoop概述 Hadoop是Apache软件基金会下一个开源分布式计算平台,以HDFS(Hadoop Distributed File System)、MapReduce(Hadoop2.0加

    2023-05-11
    132

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注