加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Yii redis zset有序集合的使用

发布时间:2020-12-13 21:24:52 所属栏目:PHP教程 来源:网络整理
导读:? 和散列存储着键与值之间的映射关系类似,有序集合也存储着成员与分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序地获取(fetch)和扫描(scan)成员和分值的命令。这里介绍一些常用命令,以及在 Yii 中的使用。 ZADD ZADD:ZADD key-name score

?

和散列存储着键与值之间的映射关系类似,有序集合也存储着成员与分值之间的映射,并且提供了分值处理命令,以及根据分值大小有序地获取(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','c');    6
// 返回c成员的分值
Yii::$app->redis->zscore('testZsetKey',1)"> 6
// 获取c在有序集合中的排名,排名从0开始
Yii::$app->redis->zrank('testZsetKey',1)"> 2
// 返回分值介于1和6之间的成员数量
Yii::$app->redis->zcount('testZsetKey',6);    3
// 移除成员b
Yii::$app->redis->zrem('testZsetKey','b');    1
// 返回有序集合中所有成员及分值
Yii::$app->redis->zrange('testZsetKey',-1,'WITHSCORES');    ["a","1","c","6"]

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读