首页 > 代码库 > Redis 四:存储类型之有序集合

Redis 四:存储类型之有序集合

有序集合似乎更大的操作是由于加了一个叫做“分子”的东西事实上就好像普通的数据,只是为这个数据加了一个纯数字的标识,通过操作这些标识来得到我们想要的数据!分子可以是整形,也可以是双精度浮点型:====================================================1.zadd num 100 a 80 b 70 c  添加一个叫num的有序集合,a元素为100分,b元素为80分....2.zscore num a  获取num集合中元素名为a的分子====================================================3.zrange num 0 2  返回num集合中从0索引开始到2索引!按从小到大的顺序  返回 c b a4.zrange num 0 2 withscores  跟上面一样,只不过会将分子也同时输出出来  c 70 b 80 a 1005.zrevrange  跟上面两个一样的用法,区别是从大到小排序====================================================6.zrangebyscore num 80 100  返回分子80 - 100之间的所有元素7.zrangebysocre num (80 100  返回分子81 - 100之间的所有元素,加半个括号代表不包含当前端点8.上述2个命令可以加上withscores,把分子跟元素同时显示出来=====================================================9.zrangebysocre num 60 200 limit 0 2  获取num集合中分子60 - 200之间的前2个(索引0开始,取2个)=====================================================10.zincrby num 4 a (用负数就可以减分)  给num集合中元素名为a的分子+411.zcard num 获取num集合中元素个数12.zcount num 80 200 获取num集合中分子80到200间共有多少个元素13.zrem num a 删除a14.zremrangebyrank num 0 2   删除num集合从索引0开始到索引2位置的3个元素(包括分子一并删除)15.zremrangebysocre num 40 200   删除num集合中分子在40到200之间的所有元素(包括分子一并删除)16.zrank num a   返回将num中的元素按照分子从小到大排序后,a的元素的位置   zrevrank num a   相反,从大到小排序17.zinterstore num5 2 num2 num   将num2与num中对应元素的分子相加,将结果存入到num5中   zadd num1 1 a 2 b 3 c   zadd num2 10 c 20 a 30 b   zinterstore num3 2 num1 num2   zrange num3 0 -1 withscores   返回:   c 23 b 32 a 2118.zinterstore num5 2 num2 num aggregate min   跟上述一样,只不过只需要最小的值参与   返回:   c 3 b 2 a 119.zinterstore num5 2 num2 num aggregate max   最大值参与