内容简介:Sorted Set 和 Set 一样,也是 String 类型的集合,且成员唯一。不同的是 Sorted Set会关联一个成员是唯一的,但是
Sorted Set(有序集合)
Sorted Set 和 Set 一样,也是 String 类型的集合,且成员唯一。不同的是 Sorted Set
会关联一个 double
类型的 score
(分数),用于进行排序。
成员是唯一的,但是 score
可以重复,如果 score
重复,会使用 字典排序
。
最大的成员数为 2 32 - 1 个元素(40多亿)。
应用场景
按照分数进行排列
将用户与分数(游戏分数、考试成绩、点赞数)进行关联,然后进行排序。
任务队列
将任务分为不同的等级,例如重要为2,不重要为1,根据优先级安排任务。
实例
<?php include 'redis.php'; $redis = getRedis(); $redisKey = 'name_scorted_set'; $redis->zAdd($redisKey, 78, 'tom', 78, 'jerry');// 添加成员 echo $redis->zCard($redisKey) . '<br />';// 获取成员数 2 $redis->zIncrBy($redisKey, 2, 'jerry');// 对指定值进行增量 print_r($redis->zRange($redisKey, 0, -1));// 获取指定索引区间的值,从小到大,示例为获取所有值 Array ( [0] => tom [1] => jerry ) echo '<br />'; print_r($redis->zRevRange($redisKey, 0, -1));// 获取指定索引区间的值,从大到小,示例为获取所有值 Array ( [0] => jerry [1] => tom ) echo '<br />'; echo $redis->zScore($redisKey, 'jerry') . '<br />';// 获取指定值的分数 80 echo $redis->zCount($redisKey, 70, 79) . '<br />';// 获取指定分数指定区间的数量 1 print_r($redis->zRangeByScore($redisKey, 70, 80));// 获取指定分数间的数据,从小到大 Array ( [0] => tom [1] => jerry ) echo '<br />'; print_r($redis->zRevRangeByScore($redisKey, 80, 70));// 获取指定分数间的数据,从大到小 Array ( [0] => jerry [1] => tom ) echo '<br />'; echo $redis->zRank($redisKey, 'jerry') . '<br />';// 获取指定值的索引,从小到大 1 echo $redis->zRevRank($redisKey, 'jerry') . '<br />';// 获取指定值的索引,从大到小 0 $redis->zAdd($redisKey, 56, 'emma'); $redis->zRem($redisKey, 'tom');// 移除指定值 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => emma [1] => jerry ) echo '<br />'; $redis->zRemRangeByRank($redisKey, 1, 2);// 移除指定排名区间的成员 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => emma ) echo '<br />'; $redis->zAdd($redisKey, 38, 'tom', 98, 'jerry'); $redis->zRemRangeByScore($redisKey, 30, 60);// 移除指定分数区间的成员 print_r($redis->zRange($redisKey, 0, -1));// Array ( [0] => jerry ) echo '<br />';
参考资料: 菜鸟教程 。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
创业就是要细分垄断
李开复、汪华、傅盛 / 文化发展出版社 / 2017-5-1 / CNY 45.00
对各方面资源极为有限的创业公司而言,想在激烈的市场竞争中站立下来的第一步是:成为细分市场的垄断者。不管是资本还是尖端人才,追逐的永远是行业里尖端的企业,第二名毫无意义。 首先,要精准定位潜在市场。这个市场的需求仍没有被满足,并且潜力巨大。其次,抓住时代和行业的红利,通过高速增长实现“小垄断”,抢滩登陆。最后,在细分领域里建立起自己的竞争壁垒,应对巨头和竞争对手的复制,去扩展更大的市场,从而扩......一起来看看 《创业就是要细分垄断》 这本书的介绍吧!